AWS SDK

AWS SDK

rev. ba98f30b52e51c6e715b0ae469e7a2e988c27d9a (ignoring whitespace)

Files changed:

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/operation/list_async_invokes/builders.rs

@@ -1,0 +215,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
pub use crate::operation::list_async_invokes::_list_async_invokes_output::ListAsyncInvokesOutputBuilder;
    3         -
    4         -
pub use crate::operation::list_async_invokes::_list_async_invokes_input::ListAsyncInvokesInputBuilder;
    5         -
    6         -
impl crate::operation::list_async_invokes::builders::ListAsyncInvokesInputBuilder {
    7         -
    /// Sends a request with this input using the given client.
    8         -
    pub async fn send_with(
    9         -
        self,
   10         -
        client: &crate::Client,
   11         -
    ) -> ::std::result::Result<
   12         -
        crate::operation::list_async_invokes::ListAsyncInvokesOutput,
   13         -
        ::aws_smithy_runtime_api::client::result::SdkError<
   14         -
            crate::operation::list_async_invokes::ListAsyncInvokesError,
   15         -
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   16         -
        >,
   17         -
    > {
   18         -
        let mut fluent_builder = client.list_async_invokes();
   19         -
        fluent_builder.inner = self;
   20         -
        fluent_builder.send().await
   21         -
    }
   22         -
}
   23         -
/// Fluent builder constructing a request to `ListAsyncInvokes`.
   24         -
///
   25         -
/// <p>Lists asynchronous invocations.</p>
   26         -
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
   27         -
pub struct ListAsyncInvokesFluentBuilder {
   28         -
    handle: ::std::sync::Arc<crate::client::Handle>,
   29         -
    inner: crate::operation::list_async_invokes::builders::ListAsyncInvokesInputBuilder,
   30         -
    config_override: ::std::option::Option<crate::config::Builder>,
   31         -
}
   32         -
impl
   33         -
    crate::client::customize::internal::CustomizableSend<
   34         -
        crate::operation::list_async_invokes::ListAsyncInvokesOutput,
   35         -
        crate::operation::list_async_invokes::ListAsyncInvokesError,
   36         -
    > for ListAsyncInvokesFluentBuilder
   37         -
{
   38         -
    fn send(
   39         -
        self,
   40         -
        config_override: crate::config::Builder,
   41         -
    ) -> crate::client::customize::internal::BoxFuture<
   42         -
        crate::client::customize::internal::SendResult<
   43         -
            crate::operation::list_async_invokes::ListAsyncInvokesOutput,
   44         -
            crate::operation::list_async_invokes::ListAsyncInvokesError,
   45         -
        >,
   46         -
    > {
   47         -
        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
   48         -
    }
   49         -
}
   50         -
impl ListAsyncInvokesFluentBuilder {
   51         -
    /// Creates a new `ListAsyncInvokesFluentBuilder`.
   52         -
    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
   53         -
        Self {
   54         -
            handle,
   55         -
            inner: ::std::default::Default::default(),
   56         -
            config_override: ::std::option::Option::None,
   57         -
        }
   58         -
    }
   59         -
    /// Access the ListAsyncInvokes as a reference.
   60         -
    pub fn as_input(&self) -> &crate::operation::list_async_invokes::builders::ListAsyncInvokesInputBuilder {
   61         -
        &self.inner
   62         -
    }
   63         -
    /// Sends the request and returns the response.
   64         -
    ///
   65         -
    /// If an error occurs, an `SdkError` will be returned with additional details that
   66         -
    /// can be matched against.
   67         -
    ///
   68         -
    /// By default, any retryable failures will be retried twice. Retry behavior
   69         -
    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
   70         -
    /// set when configuring the client.
   71         -
    pub async fn send(
   72         -
        self,
   73         -
    ) -> ::std::result::Result<
   74         -
        crate::operation::list_async_invokes::ListAsyncInvokesOutput,
   75         -
        ::aws_smithy_runtime_api::client::result::SdkError<
   76         -
            crate::operation::list_async_invokes::ListAsyncInvokesError,
   77         -
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   78         -
        >,
   79         -
    > {
   80         -
        let input = self
   81         -
            .inner
   82         -
            .build()
   83         -
            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
   84         -
        let runtime_plugins = crate::operation::list_async_invokes::ListAsyncInvokes::operation_runtime_plugins(
   85         -
            self.handle.runtime_plugins.clone(),
   86         -
            &self.handle.conf,
   87         -
            self.config_override,
   88         -
        );
   89         -
        crate::operation::list_async_invokes::ListAsyncInvokes::orchestrate(&runtime_plugins, input).await
   90         -
    }
   91         -
   92         -
    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
   93         -
    pub fn customize(
   94         -
        self,
   95         -
    ) -> crate::client::customize::CustomizableOperation<
   96         -
        crate::operation::list_async_invokes::ListAsyncInvokesOutput,
   97         -
        crate::operation::list_async_invokes::ListAsyncInvokesError,
   98         -
        Self,
   99         -
    > {
  100         -
        crate::client::customize::CustomizableOperation::new(self)
  101         -
    }
  102         -
    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
  103         -
        self.set_config_override(::std::option::Option::Some(config_override.into()));
  104         -
        self
  105         -
    }
  106         -
  107         -
    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
  108         -
        self.config_override = config_override;
  109         -
        self
  110         -
    }
  111         -
    /// Create a paginator for this request
  112         -
    ///
  113         -
    /// Paginators are used by calling [`send().await`](crate::operation::list_async_invokes::paginator::ListAsyncInvokesPaginator::send) which returns a [`PaginationStream`](aws_smithy_async::future::pagination_stream::PaginationStream).
  114         -
    pub fn into_paginator(self) -> crate::operation::list_async_invokes::paginator::ListAsyncInvokesPaginator {
  115         -
        crate::operation::list_async_invokes::paginator::ListAsyncInvokesPaginator::new(self.handle, self.inner)
  116         -
    }
  117         -
    /// <p>Include invocations submitted after this time.</p>
  118         -
    pub fn submit_time_after(mut self, input: ::aws_smithy_types::DateTime) -> Self {
  119         -
        self.inner = self.inner.submit_time_after(input);
  120         -
        self
  121         -
    }
  122         -
    /// <p>Include invocations submitted after this time.</p>
  123         -
    pub fn set_submit_time_after(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
  124         -
        self.inner = self.inner.set_submit_time_after(input);
  125         -
        self
  126         -
    }
  127         -
    /// <p>Include invocations submitted after this time.</p>
  128         -
    pub fn get_submit_time_after(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
  129         -
        self.inner.get_submit_time_after()
  130         -
    }
  131         -
    /// <p>Include invocations submitted before this time.</p>
  132         -
    pub fn submit_time_before(mut self, input: ::aws_smithy_types::DateTime) -> Self {
  133         -
        self.inner = self.inner.submit_time_before(input);
  134         -
        self
  135         -
    }
  136         -
    /// <p>Include invocations submitted before this time.</p>
  137         -
    pub fn set_submit_time_before(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
  138         -
        self.inner = self.inner.set_submit_time_before(input);
  139         -
        self
  140         -
    }
  141         -
    /// <p>Include invocations submitted before this time.</p>
  142         -
    pub fn get_submit_time_before(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
  143         -
        self.inner.get_submit_time_before()
  144         -
    }
  145         -
    /// <p>Filter invocations by status.</p>
  146         -
    pub fn status_equals(mut self, input: crate::types::AsyncInvokeStatus) -> Self {
  147         -
        self.inner = self.inner.status_equals(input);
  148         -
        self
  149         -
    }
  150         -
    /// <p>Filter invocations by status.</p>
  151         -
    pub fn set_status_equals(mut self, input: ::std::option::Option<crate::types::AsyncInvokeStatus>) -> Self {
  152         -
        self.inner = self.inner.set_status_equals(input);
  153         -
        self
  154         -
    }
  155         -
    /// <p>Filter invocations by status.</p>
  156         -
    pub fn get_status_equals(&self) -> &::std::option::Option<crate::types::AsyncInvokeStatus> {
  157         -
        self.inner.get_status_equals()
  158         -
    }
  159         -
    /// <p>The maximum number of invocations to return in one page of results.</p>
  160         -
    pub fn max_results(mut self, input: i32) -> Self {
  161         -
        self.inner = self.inner.max_results(input);
  162         -
        self
  163         -
    }
  164         -
    /// <p>The maximum number of invocations to return in one page of results.</p>
  165         -
    pub fn set_max_results(mut self, input: ::std::option::Option<i32>) -> Self {
  166         -
        self.inner = self.inner.set_max_results(input);
  167         -
        self
  168         -
    }
  169         -
    /// <p>The maximum number of invocations to return in one page of results.</p>
  170         -
    pub fn get_max_results(&self) -> &::std::option::Option<i32> {
  171         -
        self.inner.get_max_results()
  172         -
    }
  173         -
    /// <p>Specify the pagination token from a previous request to retrieve the next page of results.</p>
  174         -
    pub fn next_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
  175         -
        self.inner = self.inner.next_token(input.into());
  176         -
        self
  177         -
    }
  178         -
    /// <p>Specify the pagination token from a previous request to retrieve the next page of results.</p>
  179         -
    pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
  180         -
        self.inner = self.inner.set_next_token(input);
  181         -
        self
  182         -
    }
  183         -
    /// <p>Specify the pagination token from a previous request to retrieve the next page of results.</p>
  184         -
    pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
  185         -
        self.inner.get_next_token()
  186         -
    }
  187         -
    /// <p>How to sort the response.</p>
  188         -
    pub fn sort_by(mut self, input: crate::types::SortAsyncInvocationBy) -> Self {
  189         -
        self.inner = self.inner.sort_by(input);
  190         -
        self
  191         -
    }
  192         -
    /// <p>How to sort the response.</p>
  193         -
    pub fn set_sort_by(mut self, input: ::std::option::Option<crate::types::SortAsyncInvocationBy>) -> Self {
  194         -
        self.inner = self.inner.set_sort_by(input);
  195         -
        self
  196         -
    }
  197         -
    /// <p>How to sort the response.</p>
  198         -
    pub fn get_sort_by(&self) -> &::std::option::Option<crate::types::SortAsyncInvocationBy> {
  199         -
        self.inner.get_sort_by()
  200         -
    }
  201         -
    /// <p>The sorting order for the response.</p>
  202         -
    pub fn sort_order(mut self, input: crate::types::SortOrder) -> Self {
  203         -
        self.inner = self.inner.sort_order(input);
  204         -
        self
  205         -
    }
  206         -
    /// <p>The sorting order for the response.</p>
  207         -
    pub fn set_sort_order(mut self, input: ::std::option::Option<crate::types::SortOrder>) -> Self {
  208         -
        self.inner = self.inner.set_sort_order(input);
  209         -
        self
  210         -
    }
  211         -
    /// <p>The sorting order for the response.</p>
  212         -
    pub fn get_sort_order(&self) -> &::std::option::Option<crate::types::SortOrder> {
  213         -
        self.inner.get_sort_order()
  214         -
    }
  215         -
}

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/operation/list_async_invokes/paginator.rs

@@ -1,0 +148,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
/// Paginator for [`ListAsyncInvokes`](crate::operation::list_async_invokes::ListAsyncInvokes)
    3         -
pub struct ListAsyncInvokesPaginator {
    4         -
    handle: std::sync::Arc<crate::client::Handle>,
    5         -
    builder: crate::operation::list_async_invokes::builders::ListAsyncInvokesInputBuilder,
    6         -
    stop_on_duplicate_token: bool,
    7         -
}
    8         -
    9         -
impl ListAsyncInvokesPaginator {
   10         -
    /// Create a new paginator-wrapper
   11         -
    pub(crate) fn new(
   12         -
        handle: std::sync::Arc<crate::client::Handle>,
   13         -
        builder: crate::operation::list_async_invokes::builders::ListAsyncInvokesInputBuilder,
   14         -
    ) -> Self {
   15         -
        Self {
   16         -
            handle,
   17         -
            builder,
   18         -
            stop_on_duplicate_token: true,
   19         -
        }
   20         -
    }
   21         -
   22         -
    /// Set the page size
   23         -
    ///
   24         -
    /// _Note: this method will override any previously set value for `max_results`_
   25         -
    pub fn page_size(mut self, limit: i32) -> Self {
   26         -
        self.builder.max_results = ::std::option::Option::Some(limit);
   27         -
        self
   28         -
    }
   29         -
   30         -
    /// Create a flattened paginator
   31         -
    ///
   32         -
    /// This paginator automatically flattens results using `async_invoke_summaries`. Queries to the underlying service
   33         -
    /// are dispatched lazily.
   34         -
    pub fn items(self) -> crate::operation::list_async_invokes::paginator::ListAsyncInvokesPaginatorItems {
   35         -
        crate::operation::list_async_invokes::paginator::ListAsyncInvokesPaginatorItems(self)
   36         -
    }
   37         -
   38         -
    /// Stop paginating when the service returns the same pagination token twice in a row.
   39         -
    ///
   40         -
    /// Defaults to true.
   41         -
    ///
   42         -
    /// For certain operations, it may be useful to continue on duplicate token. For example,
   43         -
    /// if an operation is for tailing a log file in real-time, then continuing may be desired.
   44         -
    /// This option can be set to `false` to accommodate these use cases.
   45         -
    pub fn stop_on_duplicate_token(mut self, stop_on_duplicate_token: bool) -> Self {
   46         -
        self.stop_on_duplicate_token = stop_on_duplicate_token;
   47         -
        self
   48         -
    }
   49         -
   50         -
    /// Create the pagination stream
   51         -
    ///
   52         -
    /// _Note:_ No requests will be dispatched until the stream is used
   53         -
    /// (e.g. with the [`.next().await`](aws_smithy_async::future::pagination_stream::PaginationStream::next) method).
   54         -
    pub fn send(
   55         -
        self,
   56         -
    ) -> ::aws_smithy_async::future::pagination_stream::PaginationStream<
   57         -
        ::std::result::Result<
   58         -
            crate::operation::list_async_invokes::ListAsyncInvokesOutput,
   59         -
            ::aws_smithy_runtime_api::client::result::SdkError<
   60         -
                crate::operation::list_async_invokes::ListAsyncInvokesError,
   61         -
                ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   62         -
            >,
   63         -
        >,
   64         -
    > {
   65         -
        // Move individual fields out of self for the borrow checker
   66         -
        let builder = self.builder;
   67         -
        let handle = self.handle;
   68         -
        let runtime_plugins = crate::operation::list_async_invokes::ListAsyncInvokes::operation_runtime_plugins(
   69         -
            handle.runtime_plugins.clone(),
   70         -
            &handle.conf,
   71         -
            ::std::option::Option::None,
   72         -
        )
   73         -
        .with_operation_plugin(crate::sdk_feature_tracker::paginator::PaginatorFeatureTrackerRuntimePlugin::new());
   74         -
        ::aws_smithy_async::future::pagination_stream::PaginationStream::new(::aws_smithy_async::future::pagination_stream::fn_stream::FnStream::new(
   75         -
            move |tx| {
   76         -
                ::std::boxed::Box::pin(async move {
   77         -
                    // Build the input for the first time. If required fields are missing, this is where we'll produce an early error.
   78         -
                    let mut input = match builder
   79         -
                        .build()
   80         -
                        .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)
   81         -
                    {
   82         -
                        ::std::result::Result::Ok(input) => input,
   83         -
                        ::std::result::Result::Err(e) => {
   84         -
                            let _ = tx.send(::std::result::Result::Err(e)).await;
   85         -
                            return;
   86         -
                        }
   87         -
                    };
   88         -
                    loop {
   89         -
                        let resp = crate::operation::list_async_invokes::ListAsyncInvokes::orchestrate(&runtime_plugins, input.clone()).await;
   90         -
                        // If the input member is None or it was an error
   91         -
                        let done = match resp {
   92         -
                            ::std::result::Result::Ok(ref resp) => {
   93         -
                                let new_token = crate::lens::reflens_list_async_invokes_output_output_next_token(resp);
   94         -
                                // Pagination is exhausted when the next token is an empty string
   95         -
                                let is_empty = new_token.map(|token| token.is_empty()).unwrap_or(true);
   96         -
                                if !is_empty && new_token == input.next_token.as_ref() && self.stop_on_duplicate_token {
   97         -
                                    true
   98         -
                                } else {
   99         -
                                    input.next_token = new_token.cloned();
  100         -
                                    is_empty
  101         -
                                }
  102         -
                            }
  103         -
                            ::std::result::Result::Err(_) => true,
  104         -
                        };
  105         -
                        if tx.send(resp).await.is_err() {
  106         -
                            // receiving end was dropped
  107         -
                            return;
  108         -
                        }
  109         -
                        if done {
  110         -
                            return;
  111         -
                        }
  112         -
                    }
  113         -
                })
  114         -
            },
  115         -
        ))
  116         -
    }
  117         -
}
  118         -
  119         -
/// Flattened paginator for `ListAsyncInvokesPaginator`
  120         -
///
  121         -
/// This is created with [`.items()`](ListAsyncInvokesPaginator::items)
  122         -
pub struct ListAsyncInvokesPaginatorItems(ListAsyncInvokesPaginator);
  123         -
  124         -
impl ListAsyncInvokesPaginatorItems {
  125         -
    /// Create the pagination stream
  126         -
    ///
  127         -
    /// _Note_: No requests will be dispatched until the stream is used
  128         -
    /// (e.g. with the [`.next().await`](aws_smithy_async::future::pagination_stream::PaginationStream::next) method).
  129         -
    ///
  130         -
    /// To read the entirety of the paginator, use [`.collect::<Result<Vec<_>, _>()`](aws_smithy_async::future::pagination_stream::PaginationStream::collect).
  131         -
    pub fn send(
  132         -
        self,
  133         -
    ) -> ::aws_smithy_async::future::pagination_stream::PaginationStream<
  134         -
        ::std::result::Result<
  135         -
            crate::types::AsyncInvokeSummary,
  136         -
            ::aws_smithy_runtime_api::client::result::SdkError<
  137         -
                crate::operation::list_async_invokes::ListAsyncInvokesError,
  138         -
                ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
  139         -
            >,
  140         -
        >,
  141         -
    > {
  142         -
        ::aws_smithy_async::future::pagination_stream::TryFlatMap::new(self.0.send()).flat_map(|page| {
  143         -
            crate::lens::lens_list_async_invokes_output_output_async_invoke_summaries(page)
  144         -
                .unwrap_or_default()
  145         -
                .into_iter()
  146         -
        })
  147         -
    }
  148         -
}

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/operation/start_async_invoke.rs

@@ -1,0 +442,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
/// Orchestration and serialization glue logic for `StartAsyncInvoke`.
    3         -
#[derive(::std::clone::Clone, ::std::default::Default, ::std::fmt::Debug)]
    4         -
#[non_exhaustive]
    5         -
pub struct StartAsyncInvoke;
    6         -
impl StartAsyncInvoke {
    7         -
    /// Creates a new `StartAsyncInvoke`
    8         -
    pub fn new() -> Self {
    9         -
        Self
   10         -
    }
   11         -
    pub(crate) async fn orchestrate(
   12         -
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   13         -
        input: crate::operation::start_async_invoke::StartAsyncInvokeInput,
   14         -
    ) -> ::std::result::Result<
   15         -
        crate::operation::start_async_invoke::StartAsyncInvokeOutput,
   16         -
        ::aws_smithy_runtime_api::client::result::SdkError<
   17         -
            crate::operation::start_async_invoke::StartAsyncInvokeError,
   18         -
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   19         -
        >,
   20         -
    > {
   21         -
        let map_err = |err: ::aws_smithy_runtime_api::client::result::SdkError<
   22         -
            ::aws_smithy_runtime_api::client::interceptors::context::Error,
   23         -
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   24         -
        >| {
   25         -
            err.map_service_error(|err| {
   26         -
                err.downcast::<crate::operation::start_async_invoke::StartAsyncInvokeError>()
   27         -
                    .expect("correct error type")
   28         -
            })
   29         -
        };
   30         -
        let context = Self::orchestrate_with_stop_point(runtime_plugins, input, ::aws_smithy_runtime::client::orchestrator::StopPoint::None)
   31         -
            .await
   32         -
            .map_err(map_err)?;
   33         -
        let output = context.finalize().map_err(map_err)?;
   34         -
        ::std::result::Result::Ok(
   35         -
            output
   36         -
                .downcast::<crate::operation::start_async_invoke::StartAsyncInvokeOutput>()
   37         -
                .expect("correct output type"),
   38         -
        )
   39         -
    }
   40         -
   41         -
    pub(crate) async fn orchestrate_with_stop_point(
   42         -
        runtime_plugins: &::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   43         -
        input: crate::operation::start_async_invoke::StartAsyncInvokeInput,
   44         -
        stop_point: ::aws_smithy_runtime::client::orchestrator::StopPoint,
   45         -
    ) -> ::std::result::Result<
   46         -
        ::aws_smithy_runtime_api::client::interceptors::context::InterceptorContext,
   47         -
        ::aws_smithy_runtime_api::client::result::SdkError<
   48         -
            ::aws_smithy_runtime_api::client::interceptors::context::Error,
   49         -
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
   50         -
        >,
   51         -
    > {
   52         -
        let input = ::aws_smithy_runtime_api::client::interceptors::context::Input::erase(input);
   53         -
        use ::tracing::Instrument;
   54         -
        ::aws_smithy_runtime::client::orchestrator::invoke_with_stop_point("Bedrock Runtime", "StartAsyncInvoke", input, runtime_plugins, stop_point)
   55         -
            // Create a parent span for the entire operation. Includes a random, internal-only,
   56         -
            // seven-digit ID for the operation orchestration so that it can be correlated in the logs.
   57         -
            .instrument(::tracing::debug_span!(
   58         -
                "Bedrock Runtime.StartAsyncInvoke",
   59         -
                "rpc.service" = "Bedrock Runtime",
   60         -
                "rpc.method" = "StartAsyncInvoke",
   61         -
                "sdk_invocation_id" = ::fastrand::u32(1_000_000..10_000_000),
   62         -
                "rpc.system" = "aws-api",
   63         -
            ))
   64         -
            .await
   65         -
    }
   66         -
   67         -
    pub(crate) fn operation_runtime_plugins(
   68         -
        client_runtime_plugins: ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
   69         -
        client_config: &crate::config::Config,
   70         -
        config_override: ::std::option::Option<crate::config::Builder>,
   71         -
    ) -> ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins {
   72         -
        let mut runtime_plugins = client_runtime_plugins.with_operation_plugin(Self::new());
   73         -
        runtime_plugins = runtime_plugins.with_operation_plugin(crate::client_idempotency_token::IdempotencyTokenRuntimePlugin::new(
   74         -
            |token_provider, input| {
   75         -
                let input: &mut crate::operation::start_async_invoke::StartAsyncInvokeInput = input.downcast_mut().expect("correct type");
   76         -
                if input.client_request_token.is_none() {
   77         -
                    input.client_request_token = ::std::option::Option::Some(token_provider.make_idempotency_token());
   78         -
                }
   79         -
            },
   80         -
        ));
   81         -
        if let ::std::option::Option::Some(config_override) = config_override {
   82         -
            for plugin in config_override.runtime_plugins.iter().cloned() {
   83         -
                runtime_plugins = runtime_plugins.with_operation_plugin(plugin);
   84         -
            }
   85         -
            runtime_plugins = runtime_plugins.with_operation_plugin(crate::config::ConfigOverrideRuntimePlugin::new(
   86         -
                config_override,
   87         -
                client_config.config.clone(),
   88         -
                &client_config.runtime_components,
   89         -
            ));
   90         -
        }
   91         -
        runtime_plugins
   92         -
    }
   93         -
}
   94         -
impl ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugin for StartAsyncInvoke {
   95         -
    fn config(&self) -> ::std::option::Option<::aws_smithy_types::config_bag::FrozenLayer> {
   96         -
        let mut cfg = ::aws_smithy_types::config_bag::Layer::new("StartAsyncInvoke");
   97         -
   98         -
        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedRequestSerializer::new(
   99         -
            StartAsyncInvokeRequestSerializer,
  100         -
        ));
  101         -
        cfg.store_put(::aws_smithy_runtime_api::client::ser_de::SharedResponseDeserializer::new(
  102         -
            StartAsyncInvokeResponseDeserializer,
  103         -
        ));
  104         -
  105         -
        cfg.store_put(::aws_smithy_runtime_api::client::auth::AuthSchemeOptionResolverParams::new(
  106         -
            crate::config::auth::Params::builder()
  107         -
                .operation_name("StartAsyncInvoke")
  108         -
                .build()
  109         -
                .expect("required fields set"),
  110         -
        ));
  111         -
  112         -
        cfg.store_put(::aws_smithy_runtime_api::client::orchestrator::Metadata::new(
  113         -
            "StartAsyncInvoke",
  114         -
            "Bedrock Runtime",
  115         -
        ));
  116         -
        let mut signing_options = ::aws_runtime::auth::SigningOptions::default();
  117         -
        signing_options.double_uri_encode = true;
  118         -
        signing_options.content_sha256_header = false;
  119         -
        signing_options.normalize_uri_path = true;
  120         -
        signing_options.payload_override = None;
  121         -
  122         -
        cfg.store_put(::aws_runtime::auth::SigV4OperationSigningConfig {
  123         -
            signing_options,
  124         -
            ..::std::default::Default::default()
  125         -
        });
  126         -
  127         -
        ::std::option::Option::Some(cfg.freeze())
  128         -
    }
  129         -
  130         -
    fn runtime_components(
  131         -
        &self,
  132         -
        _: &::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder,
  133         -
    ) -> ::std::borrow::Cow<'_, ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder> {
  134         -
        #[allow(unused_mut)]
  135         -
        let mut rcb = ::aws_smithy_runtime_api::client::runtime_components::RuntimeComponentsBuilder::new("StartAsyncInvoke")
  136         -
            .with_interceptor(::aws_smithy_runtime::client::stalled_stream_protection::StalledStreamProtectionInterceptor::default())
  137         -
            .with_interceptor(StartAsyncInvokeEndpointParamsInterceptor)
  138         -
            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::TransientErrorClassifier::<
  139         -
                crate::operation::start_async_invoke::StartAsyncInvokeError,
  140         -
            >::new())
  141         -
            .with_retry_classifier(::aws_smithy_runtime::client::retries::classifiers::ModeledAsRetryableClassifier::<
  142         -
                crate::operation::start_async_invoke::StartAsyncInvokeError,
  143         -
            >::new())
  144         -
            .with_retry_classifier(::aws_runtime::retries::classifiers::AwsErrorCodeClassifier::<
  145         -
                crate::operation::start_async_invoke::StartAsyncInvokeError,
  146         -
            >::new());
  147         -
  148         -
        ::std::borrow::Cow::Owned(rcb)
  149         -
    }
  150         -
}
  151         -
  152         -
#[derive(Debug)]
  153         -
struct StartAsyncInvokeResponseDeserializer;
  154         -
impl ::aws_smithy_runtime_api::client::ser_de::DeserializeResponse for StartAsyncInvokeResponseDeserializer {
  155         -
    fn deserialize_nonstreaming(
  156         -
        &self,
  157         -
        response: &::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
  158         -
    ) -> ::aws_smithy_runtime_api::client::interceptors::context::OutputOrError {
  159         -
        let (success, status) = (response.status().is_success(), response.status().as_u16());
  160         -
        let headers = response.headers();
  161         -
        let body = response.body().bytes().expect("body loaded");
  162         -
        #[allow(unused_mut)]
  163         -
        let mut force_error = false;
  164         -
        ::tracing::debug!(request_id = ?::aws_types::request_id::RequestId::request_id(response));
  165         -
        let parse_result = if !success && status != 200 || force_error {
  166         -
            crate::protocol_serde::shape_start_async_invoke::de_start_async_invoke_http_error(status, headers, body)
  167         -
        } else {
  168         -
            crate::protocol_serde::shape_start_async_invoke::de_start_async_invoke_http_response(status, headers, body)
  169         -
        };
  170         -
        crate::protocol_serde::type_erase_result(parse_result)
  171         -
    }
  172         -
}
  173         -
#[derive(Debug)]
  174         -
struct StartAsyncInvokeRequestSerializer;
  175         -
impl ::aws_smithy_runtime_api::client::ser_de::SerializeRequest for StartAsyncInvokeRequestSerializer {
  176         -
    #[allow(unused_mut, clippy::let_and_return, clippy::needless_borrow, clippy::useless_conversion)]
  177         -
    fn serialize_input(
  178         -
        &self,
  179         -
        input: ::aws_smithy_runtime_api::client::interceptors::context::Input,
  180         -
        _cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  181         -
    ) -> ::std::result::Result<::aws_smithy_runtime_api::client::orchestrator::HttpRequest, ::aws_smithy_runtime_api::box_error::BoxError> {
  182         -
        let input = input
  183         -
            .downcast::<crate::operation::start_async_invoke::StartAsyncInvokeInput>()
  184         -
            .expect("correct type");
  185         -
        let _header_serialization_settings = _cfg
  186         -
            .load::<crate::serialization_settings::HeaderSerializationSettings>()
  187         -
            .cloned()
  188         -
            .unwrap_or_default();
  189         -
        let mut request_builder = {
  190         -
            fn uri_base(
  191         -
                _input: &crate::operation::start_async_invoke::StartAsyncInvokeInput,
  192         -
                output: &mut ::std::string::String,
  193         -
            ) -> ::std::result::Result<(), ::aws_smithy_types::error::operation::BuildError> {
  194         -
                use ::std::fmt::Write as _;
  195         -
                ::std::write!(output, "/async-invoke").expect("formatting should succeed");
  196         -
                ::std::result::Result::Ok(())
  197         -
            }
  198         -
            #[allow(clippy::unnecessary_wraps)]
  199         -
            fn update_http_builder(
  200         -
                input: &crate::operation::start_async_invoke::StartAsyncInvokeInput,
  201         -
                builder: ::http::request::Builder,
  202         -
            ) -> ::std::result::Result<::http::request::Builder, ::aws_smithy_types::error::operation::BuildError> {
  203         -
                let mut uri = ::std::string::String::new();
  204         -
                uri_base(input, &mut uri)?;
  205         -
                ::std::result::Result::Ok(builder.method("POST").uri(uri))
  206         -
            }
  207         -
            let mut builder = update_http_builder(&input, ::http::request::Builder::new())?;
  208         -
            builder = _header_serialization_settings.set_default_header(builder, ::http::header::CONTENT_TYPE, "application/json");
  209         -
            builder
  210         -
        };
  211         -
        let body = ::aws_smithy_types::body::SdkBody::from(crate::protocol_serde::shape_start_async_invoke::ser_start_async_invoke_input(&input)?);
  212         -
        if let Some(content_length) = body.content_length() {
  213         -
            let content_length = content_length.to_string();
  214         -
            request_builder = _header_serialization_settings.set_default_header(request_builder, ::http::header::CONTENT_LENGTH, &content_length);
  215         -
        }
  216         -
        ::std::result::Result::Ok(request_builder.body(body).expect("valid request").try_into().unwrap())
  217         -
    }
  218         -
}
  219         -
#[derive(Debug)]
  220         -
struct StartAsyncInvokeEndpointParamsInterceptor;
  221         -
  222         -
impl ::aws_smithy_runtime_api::client::interceptors::Intercept for StartAsyncInvokeEndpointParamsInterceptor {
  223         -
    fn name(&self) -> &'static str {
  224         -
        "StartAsyncInvokeEndpointParamsInterceptor"
  225         -
    }
  226         -
  227         -
    fn read_before_execution(
  228         -
        &self,
  229         -
        context: &::aws_smithy_runtime_api::client::interceptors::context::BeforeSerializationInterceptorContextRef<
  230         -
            '_,
  231         -
            ::aws_smithy_runtime_api::client::interceptors::context::Input,
  232         -
            ::aws_smithy_runtime_api::client::interceptors::context::Output,
  233         -
            ::aws_smithy_runtime_api::client::interceptors::context::Error,
  234         -
        >,
  235         -
        cfg: &mut ::aws_smithy_types::config_bag::ConfigBag,
  236         -
    ) -> ::std::result::Result<(), ::aws_smithy_runtime_api::box_error::BoxError> {
  237         -
        let _input = context
  238         -
            .input()
  239         -
            .downcast_ref::<StartAsyncInvokeInput>()
  240         -
            .ok_or("failed to downcast to StartAsyncInvokeInput")?;
  241         -
  242         -
        let params = crate::config::endpoint::Params::builder()
  243         -
            .set_region(cfg.load::<::aws_types::region::Region>().map(|r| r.as_ref().to_owned()))
  244         -
            .set_use_dual_stack(cfg.load::<::aws_types::endpoint_config::UseDualStack>().map(|ty| ty.0))
  245         -
            .set_use_fips(cfg.load::<::aws_types::endpoint_config::UseFips>().map(|ty| ty.0))
  246         -
            .set_endpoint(cfg.load::<::aws_types::endpoint_config::EndpointUrl>().map(|ty| ty.0.clone()))
  247         -
            .build()
  248         -
            .map_err(|err| {
  249         -
                ::aws_smithy_runtime_api::client::interceptors::error::ContextAttachedError::new("endpoint params could not be built", err)
  250         -
            })?;
  251         -
        cfg.interceptor_state()
  252         -
            .store_put(::aws_smithy_runtime_api::client::endpoint::EndpointResolverParams::new(params));
  253         -
        ::std::result::Result::Ok(())
  254         -
    }
  255         -
}
  256         -
  257         -
// The get_* functions below are generated from JMESPath expressions in the
  258         -
// operationContextParams trait. They target the operation's input shape.
  259         -
  260         -
/// Error type for the `StartAsyncInvokeError` operation.
  261         -
#[non_exhaustive]
  262         -
#[derive(::std::fmt::Debug)]
  263         -
pub enum StartAsyncInvokeError {
  264         -
    /// <p>The request is denied because you do not have sufficient permissions to perform the requested action. For troubleshooting this error, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/troubleshooting-api-error-codes.html#ts-access-denied">AccessDeniedException</a> in the Amazon Bedrock User Guide</p>
  265         -
    AccessDeniedException(crate::types::error::AccessDeniedException),
  266         -
    /// <p>Error occurred because of a conflict while performing an operation.</p>
  267         -
    ConflictException(crate::types::error::ConflictException),
  268         -
    /// <p>An internal server error occurred. For troubleshooting this error, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/troubleshooting-api-error-codes.html#ts-internal-failure">InternalFailure</a> in the Amazon Bedrock User Guide</p>
  269         -
    InternalServerException(crate::types::error::InternalServerException),
  270         -
    /// <p>The specified resource ARN was not found. For troubleshooting this error, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/troubleshooting-api-error-codes.html#ts-resource-not-found">ResourceNotFound</a> in the Amazon Bedrock User Guide</p>
  271         -
    ResourceNotFoundException(crate::types::error::ResourceNotFoundException),
  272         -
    /// <p>Your request exceeds the service quota for your account. You can view your quotas at <a href="https://docs.aws.amazon.com/servicequotas/latest/userguide/gs-request-quota.html">Viewing service quotas</a>. You can resubmit your request later.</p>
  273         -
    ServiceQuotaExceededException(crate::types::error::ServiceQuotaExceededException),
  274         -
    /// <p>The service isn't currently available. For troubleshooting this error, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/troubleshooting-api-error-codes.html#ts-service-unavailable">ServiceUnavailable</a> in the Amazon Bedrock User Guide</p>
  275         -
    ServiceUnavailableException(crate::types::error::ServiceUnavailableException),
  276         -
    /// <p>Your request was denied due to exceeding the account quotas for <i>Amazon Bedrock</i>. For troubleshooting this error, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/troubleshooting-api-error-codes.html#ts-throttling-exception">ThrottlingException</a> in the Amazon Bedrock User Guide</p>
  277         -
    ThrottlingException(crate::types::error::ThrottlingException),
  278         -
    /// <p>The input fails to satisfy the constraints specified by <i>Amazon Bedrock</i>. For troubleshooting this error, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/troubleshooting-api-error-codes.html#ts-validation-error">ValidationError</a> in the Amazon Bedrock User Guide</p>
  279         -
    ValidationException(crate::types::error::ValidationException),
  280         -
    /// An unexpected error occurred (e.g., invalid JSON returned by the service or an unknown error code).
  281         -
    #[deprecated(note = "Matching `Unhandled` directly is not forwards compatible. Instead, match using a \
  282         -
    variable wildcard pattern and check `.code()`:
  283         -
     \
  284         -
    &nbsp;&nbsp;&nbsp;`err if err.code() == Some(\"SpecificExceptionCode\") => { /* handle the error */ }`
  285         -
     \
  286         -
    See [`ProvideErrorMetadata`](#impl-ProvideErrorMetadata-for-StartAsyncInvokeError) for what information is available for the error.")]
  287         -
    Unhandled(crate::error::sealed_unhandled::Unhandled),
  288         -
}
  289         -
impl StartAsyncInvokeError {
  290         -
    /// Creates the `StartAsyncInvokeError::Unhandled` variant from any error type.
  291         -
    pub fn unhandled(
  292         -
        err: impl ::std::convert::Into<::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>>,
  293         -
    ) -> Self {
  294         -
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  295         -
            source: err.into(),
  296         -
            meta: ::std::default::Default::default(),
  297         -
        })
  298         -
    }
  299         -
  300         -
    /// Creates the `StartAsyncInvokeError::Unhandled` variant from an [`ErrorMetadata`](::aws_smithy_types::error::ErrorMetadata).
  301         -
    pub fn generic(err: ::aws_smithy_types::error::ErrorMetadata) -> Self {
  302         -
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  303         -
            source: err.clone().into(),
  304         -
            meta: err,
  305         -
        })
  306         -
    }
  307         -
    ///
  308         -
    /// Returns error metadata, which includes the error code, message,
  309         -
    /// request ID, and potentially additional information.
  310         -
    ///
  311         -
    pub fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
  312         -
        match self {
  313         -
            Self::AccessDeniedException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
  314         -
            Self::ConflictException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
  315         -
            Self::InternalServerException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
  316         -
            Self::ResourceNotFoundException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
  317         -
            Self::ServiceQuotaExceededException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
  318         -
            Self::ServiceUnavailableException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
  319         -
            Self::ThrottlingException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
  320         -
            Self::ValidationException(e) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(e),
  321         -
            Self::Unhandled(e) => &e.meta,
  322         -
        }
  323         -
    }
  324         -
    /// Returns `true` if the error kind is `StartAsyncInvokeError::AccessDeniedException`.
  325         -
    pub fn is_access_denied_exception(&self) -> bool {
  326         -
        matches!(self, Self::AccessDeniedException(_))
  327         -
    }
  328         -
    /// Returns `true` if the error kind is `StartAsyncInvokeError::ConflictException`.
  329         -
    pub fn is_conflict_exception(&self) -> bool {
  330         -
        matches!(self, Self::ConflictException(_))
  331         -
    }
  332         -
    /// Returns `true` if the error kind is `StartAsyncInvokeError::InternalServerException`.
  333         -
    pub fn is_internal_server_exception(&self) -> bool {
  334         -
        matches!(self, Self::InternalServerException(_))
  335         -
    }
  336         -
    /// Returns `true` if the error kind is `StartAsyncInvokeError::ResourceNotFoundException`.
  337         -
    pub fn is_resource_not_found_exception(&self) -> bool {
  338         -
        matches!(self, Self::ResourceNotFoundException(_))
  339         -
    }
  340         -
    /// Returns `true` if the error kind is `StartAsyncInvokeError::ServiceQuotaExceededException`.
  341         -
    pub fn is_service_quota_exceeded_exception(&self) -> bool {
  342         -
        matches!(self, Self::ServiceQuotaExceededException(_))
  343         -
    }
  344         -
    /// Returns `true` if the error kind is `StartAsyncInvokeError::ServiceUnavailableException`.
  345         -
    pub fn is_service_unavailable_exception(&self) -> bool {
  346         -
        matches!(self, Self::ServiceUnavailableException(_))
  347         -
    }
  348         -
    /// Returns `true` if the error kind is `StartAsyncInvokeError::ThrottlingException`.
  349         -
    pub fn is_throttling_exception(&self) -> bool {
  350         -
        matches!(self, Self::ThrottlingException(_))
  351         -
    }
  352         -
    /// Returns `true` if the error kind is `StartAsyncInvokeError::ValidationException`.
  353         -
    pub fn is_validation_exception(&self) -> bool {
  354         -
        matches!(self, Self::ValidationException(_))
  355         -
    }
  356         -
}
  357         -
impl ::std::error::Error for StartAsyncInvokeError {
  358         -
    fn source(&self) -> ::std::option::Option<&(dyn ::std::error::Error + 'static)> {
  359         -
        match self {
  360         -
            Self::AccessDeniedException(_inner) => ::std::option::Option::Some(_inner),
  361         -
            Self::ConflictException(_inner) => ::std::option::Option::Some(_inner),
  362         -
            Self::InternalServerException(_inner) => ::std::option::Option::Some(_inner),
  363         -
            Self::ResourceNotFoundException(_inner) => ::std::option::Option::Some(_inner),
  364         -
            Self::ServiceQuotaExceededException(_inner) => ::std::option::Option::Some(_inner),
  365         -
            Self::ServiceUnavailableException(_inner) => ::std::option::Option::Some(_inner),
  366         -
            Self::ThrottlingException(_inner) => ::std::option::Option::Some(_inner),
  367         -
            Self::ValidationException(_inner) => ::std::option::Option::Some(_inner),
  368         -
            Self::Unhandled(_inner) => ::std::option::Option::Some(&*_inner.source),
  369         -
        }
  370         -
    }
  371         -
}
  372         -
impl ::std::fmt::Display for StartAsyncInvokeError {
  373         -
    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
  374         -
        match self {
  375         -
            Self::AccessDeniedException(_inner) => _inner.fmt(f),
  376         -
            Self::ConflictException(_inner) => _inner.fmt(f),
  377         -
            Self::InternalServerException(_inner) => _inner.fmt(f),
  378         -
            Self::ResourceNotFoundException(_inner) => _inner.fmt(f),
  379         -
            Self::ServiceQuotaExceededException(_inner) => _inner.fmt(f),
  380         -
            Self::ServiceUnavailableException(_inner) => _inner.fmt(f),
  381         -
            Self::ThrottlingException(_inner) => _inner.fmt(f),
  382         -
            Self::ValidationException(_inner) => _inner.fmt(f),
  383         -
            Self::Unhandled(_inner) => {
  384         -
                if let ::std::option::Option::Some(code) = ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self) {
  385         -
                    write!(f, "unhandled error ({code})")
  386         -
                } else {
  387         -
                    f.write_str("unhandled error")
  388         -
                }
  389         -
            }
  390         -
        }
  391         -
    }
  392         -
}
  393         -
impl ::aws_smithy_types::retry::ProvideErrorKind for StartAsyncInvokeError {
  394         -
    fn code(&self) -> ::std::option::Option<&str> {
  395         -
        ::aws_smithy_types::error::metadata::ProvideErrorMetadata::code(self)
  396         -
    }
  397         -
    fn retryable_error_kind(&self) -> ::std::option::Option<::aws_smithy_types::retry::ErrorKind> {
  398         -
        ::std::option::Option::None
  399         -
    }
  400         -
}
  401         -
impl ::aws_smithy_types::error::metadata::ProvideErrorMetadata for StartAsyncInvokeError {
  402         -
    fn meta(&self) -> &::aws_smithy_types::error::ErrorMetadata {
  403         -
        match self {
  404         -
            Self::AccessDeniedException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  405         -
            Self::ConflictException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  406         -
            Self::InternalServerException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  407         -
            Self::ResourceNotFoundException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  408         -
            Self::ServiceQuotaExceededException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  409         -
            Self::ServiceUnavailableException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  410         -
            Self::ThrottlingException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  411         -
            Self::ValidationException(_inner) => ::aws_smithy_types::error::metadata::ProvideErrorMetadata::meta(_inner),
  412         -
            Self::Unhandled(_inner) => &_inner.meta,
  413         -
        }
  414         -
    }
  415         -
}
  416         -
impl ::aws_smithy_runtime_api::client::result::CreateUnhandledError for StartAsyncInvokeError {
  417         -
    fn create_unhandled_error(
  418         -
        source: ::std::boxed::Box<dyn ::std::error::Error + ::std::marker::Send + ::std::marker::Sync + 'static>,
  419         -
        meta: ::std::option::Option<::aws_smithy_types::error::ErrorMetadata>,
  420         -
    ) -> Self {
  421         -
        Self::Unhandled(crate::error::sealed_unhandled::Unhandled {
  422         -
            source,
  423         -
            meta: meta.unwrap_or_default(),
  424         -
        })
  425         -
    }
  426         -
}
  427         -
impl ::aws_types::request_id::RequestId for crate::operation::start_async_invoke::StartAsyncInvokeError {
  428         -
    fn request_id(&self) -> Option<&str> {
  429         -
        self.meta().request_id()
  430         -
    }
  431         -
}
  432         -
  433         -
pub use crate::operation::start_async_invoke::_start_async_invoke_output::StartAsyncInvokeOutput;
  434         -
  435         -
pub use crate::operation::start_async_invoke::_start_async_invoke_input::StartAsyncInvokeInput;
  436         -
  437         -
mod _start_async_invoke_input;
  438         -
  439         -
mod _start_async_invoke_output;
  440         -
  441         -
/// Builders
  442         -
pub mod builders;

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/operation/start_async_invoke/_start_async_invoke_input.rs

@@ -1,0 +172,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
#[allow(missing_docs)] // documentation missing in model
    3         -
#[non_exhaustive]
    4         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq)]
    5         -
pub struct StartAsyncInvokeInput {
    6         -
    /// <p>Specify idempotency token to ensure that requests are not duplicated.</p>
    7         -
    pub client_request_token: ::std::option::Option<::std::string::String>,
    8         -
    /// <p>The model to invoke.</p>
    9         -
    pub model_id: ::std::option::Option<::std::string::String>,
   10         -
    /// <p>Input to send to the model.</p>
   11         -
    pub model_input: ::std::option::Option<::aws_smithy_types::Document>,
   12         -
    /// <p>Where to store the output.</p>
   13         -
    pub output_data_config: ::std::option::Option<crate::types::AsyncInvokeOutputDataConfig>,
   14         -
    /// <p>Tags to apply to the invocation.</p>
   15         -
    pub tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
   16         -
}
   17         -
impl StartAsyncInvokeInput {
   18         -
    /// <p>Specify idempotency token to ensure that requests are not duplicated.</p>
   19         -
    pub fn client_request_token(&self) -> ::std::option::Option<&str> {
   20         -
        self.client_request_token.as_deref()
   21         -
    }
   22         -
    /// <p>The model to invoke.</p>
   23         -
    pub fn model_id(&self) -> ::std::option::Option<&str> {
   24         -
        self.model_id.as_deref()
   25         -
    }
   26         -
    /// <p>Input to send to the model.</p>
   27         -
    pub fn model_input(&self) -> ::std::option::Option<&::aws_smithy_types::Document> {
   28         -
        self.model_input.as_ref()
   29         -
    }
   30         -
    /// <p>Where to store the output.</p>
   31         -
    pub fn output_data_config(&self) -> ::std::option::Option<&crate::types::AsyncInvokeOutputDataConfig> {
   32         -
        self.output_data_config.as_ref()
   33         -
    }
   34         -
    /// <p>Tags to apply to the invocation.</p>
   35         -
    ///
   36         -
    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.tags.is_none()`.
   37         -
    pub fn tags(&self) -> &[crate::types::Tag] {
   38         -
        self.tags.as_deref().unwrap_or_default()
   39         -
    }
   40         -
}
   41         -
impl ::std::fmt::Debug for StartAsyncInvokeInput {
   42         -
    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
   43         -
        let mut formatter = f.debug_struct("StartAsyncInvokeInput");
   44         -
        formatter.field("client_request_token", &self.client_request_token);
   45         -
        formatter.field("model_id", &self.model_id);
   46         -
        formatter.field("model_input", &"*** Sensitive Data Redacted ***");
   47         -
        formatter.field("output_data_config", &self.output_data_config);
   48         -
        formatter.field("tags", &self.tags);
   49         -
        formatter.finish()
   50         -
    }
   51         -
}
   52         -
impl StartAsyncInvokeInput {
   53         -
    /// Creates a new builder-style object to manufacture [`StartAsyncInvokeInput`](crate::operation::start_async_invoke::StartAsyncInvokeInput).
   54         -
    pub fn builder() -> crate::operation::start_async_invoke::builders::StartAsyncInvokeInputBuilder {
   55         -
        crate::operation::start_async_invoke::builders::StartAsyncInvokeInputBuilder::default()
   56         -
    }
   57         -
}
   58         -
   59         -
/// A builder for [`StartAsyncInvokeInput`](crate::operation::start_async_invoke::StartAsyncInvokeInput).
   60         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
   61         -
#[non_exhaustive]
   62         -
pub struct StartAsyncInvokeInputBuilder {
   63         -
    pub(crate) client_request_token: ::std::option::Option<::std::string::String>,
   64         -
    pub(crate) model_id: ::std::option::Option<::std::string::String>,
   65         -
    pub(crate) model_input: ::std::option::Option<::aws_smithy_types::Document>,
   66         -
    pub(crate) output_data_config: ::std::option::Option<crate::types::AsyncInvokeOutputDataConfig>,
   67         -
    pub(crate) tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
   68         -
}
   69         -
impl StartAsyncInvokeInputBuilder {
   70         -
    /// <p>Specify idempotency token to ensure that requests are not duplicated.</p>
   71         -
    pub fn client_request_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
   72         -
        self.client_request_token = ::std::option::Option::Some(input.into());
   73         -
        self
   74         -
    }
   75         -
    /// <p>Specify idempotency token to ensure that requests are not duplicated.</p>
   76         -
    pub fn set_client_request_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
   77         -
        self.client_request_token = input;
   78         -
        self
   79         -
    }
   80         -
    /// <p>Specify idempotency token to ensure that requests are not duplicated.</p>
   81         -
    pub fn get_client_request_token(&self) -> &::std::option::Option<::std::string::String> {
   82         -
        &self.client_request_token
   83         -
    }
   84         -
    /// <p>The model to invoke.</p>
   85         -
    /// This field is required.
   86         -
    pub fn model_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
   87         -
        self.model_id = ::std::option::Option::Some(input.into());
   88         -
        self
   89         -
    }
   90         -
    /// <p>The model to invoke.</p>
   91         -
    pub fn set_model_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
   92         -
        self.model_id = input;
   93         -
        self
   94         -
    }
   95         -
    /// <p>The model to invoke.</p>
   96         -
    pub fn get_model_id(&self) -> &::std::option::Option<::std::string::String> {
   97         -
        &self.model_id
   98         -
    }
   99         -
    /// <p>Input to send to the model.</p>
  100         -
    /// This field is required.
  101         -
    pub fn model_input(mut self, input: ::aws_smithy_types::Document) -> Self {
  102         -
        self.model_input = ::std::option::Option::Some(input);
  103         -
        self
  104         -
    }
  105         -
    /// <p>Input to send to the model.</p>
  106         -
    pub fn set_model_input(mut self, input: ::std::option::Option<::aws_smithy_types::Document>) -> Self {
  107         -
        self.model_input = input;
  108         -
        self
  109         -
    }
  110         -
    /// <p>Input to send to the model.</p>
  111         -
    pub fn get_model_input(&self) -> &::std::option::Option<::aws_smithy_types::Document> {
  112         -
        &self.model_input
  113         -
    }
  114         -
    /// <p>Where to store the output.</p>
  115         -
    /// This field is required.
  116         -
    pub fn output_data_config(mut self, input: crate::types::AsyncInvokeOutputDataConfig) -> Self {
  117         -
        self.output_data_config = ::std::option::Option::Some(input);
  118         -
        self
  119         -
    }
  120         -
    /// <p>Where to store the output.</p>
  121         -
    pub fn set_output_data_config(mut self, input: ::std::option::Option<crate::types::AsyncInvokeOutputDataConfig>) -> Self {
  122         -
        self.output_data_config = input;
  123         -
        self
  124         -
    }
  125         -
    /// <p>Where to store the output.</p>
  126         -
    pub fn get_output_data_config(&self) -> &::std::option::Option<crate::types::AsyncInvokeOutputDataConfig> {
  127         -
        &self.output_data_config
  128         -
    }
  129         -
    /// Appends an item to `tags`.
  130         -
    ///
  131         -
    /// To override the contents of this collection use [`set_tags`](Self::set_tags).
  132         -
    ///
  133         -
    /// <p>Tags to apply to the invocation.</p>
  134         -
    pub fn tags(mut self, input: crate::types::Tag) -> Self {
  135         -
        let mut v = self.tags.unwrap_or_default();
  136         -
        v.push(input);
  137         -
        self.tags = ::std::option::Option::Some(v);
  138         -
        self
  139         -
    }
  140         -
    /// <p>Tags to apply to the invocation.</p>
  141         -
    pub fn set_tags(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>) -> Self {
  142         -
        self.tags = input;
  143         -
        self
  144         -
    }
  145         -
    /// <p>Tags to apply to the invocation.</p>
  146         -
    pub fn get_tags(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Tag>> {
  147         -
        &self.tags
  148         -
    }
  149         -
    /// Consumes the builder and constructs a [`StartAsyncInvokeInput`](crate::operation::start_async_invoke::StartAsyncInvokeInput).
  150         -
    pub fn build(
  151         -
        self,
  152         -
    ) -> ::std::result::Result<crate::operation::start_async_invoke::StartAsyncInvokeInput, ::aws_smithy_types::error::operation::BuildError> {
  153         -
        ::std::result::Result::Ok(crate::operation::start_async_invoke::StartAsyncInvokeInput {
  154         -
            client_request_token: self.client_request_token,
  155         -
            model_id: self.model_id,
  156         -
            model_input: self.model_input,
  157         -
            output_data_config: self.output_data_config,
  158         -
            tags: self.tags,
  159         -
        })
  160         -
    }
  161         -
}
  162         -
impl ::std::fmt::Debug for StartAsyncInvokeInputBuilder {
  163         -
    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
  164         -
        let mut formatter = f.debug_struct("StartAsyncInvokeInputBuilder");
  165         -
        formatter.field("client_request_token", &self.client_request_token);
  166         -
        formatter.field("model_id", &self.model_id);
  167         -
        formatter.field("model_input", &"*** Sensitive Data Redacted ***");
  168         -
        formatter.field("output_data_config", &self.output_data_config);
  169         -
        formatter.field("tags", &self.tags);
  170         -
        formatter.finish()
  171         -
    }
  172         -
}

tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/src/operation/start_async_invoke/_start_async_invoke_output.rs

@@ -1,0 +77,0 @@
    1         -
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
    2         -
#[allow(missing_docs)] // documentation missing in model
    3         -
#[non_exhaustive]
    4         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
    5         -
pub struct StartAsyncInvokeOutput {
    6         -
    /// <p>The ARN of the invocation.</p>
    7         -
    pub invocation_arn: ::std::string::String,
    8         -
    _request_id: Option<String>,
    9         -
}
   10         -
impl StartAsyncInvokeOutput {
   11         -
    /// <p>The ARN of the invocation.</p>
   12         -
    pub fn invocation_arn(&self) -> &str {
   13         -
        use std::ops::Deref;
   14         -
        self.invocation_arn.deref()
   15         -
    }
   16         -
}
   17         -
impl ::aws_types::request_id::RequestId for StartAsyncInvokeOutput {
   18         -
    fn request_id(&self) -> Option<&str> {
   19         -
        self._request_id.as_deref()
   20         -
    }
   21         -
}
   22         -
impl StartAsyncInvokeOutput {
   23         -
    /// Creates a new builder-style object to manufacture [`StartAsyncInvokeOutput`](crate::operation::start_async_invoke::StartAsyncInvokeOutput).
   24         -
    pub fn builder() -> crate::operation::start_async_invoke::builders::StartAsyncInvokeOutputBuilder {
   25         -
        crate::operation::start_async_invoke::builders::StartAsyncInvokeOutputBuilder::default()
   26         -
    }
   27         -
}
   28         -
   29         -
/// A builder for [`StartAsyncInvokeOutput`](crate::operation::start_async_invoke::StartAsyncInvokeOutput).
   30         -
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
   31         -
#[non_exhaustive]
   32         -
pub struct StartAsyncInvokeOutputBuilder {
   33         -
    pub(crate) invocation_arn: ::std::option::Option<::std::string::String>,
   34         -
    _request_id: Option<String>,
   35         -
}
   36         -
impl StartAsyncInvokeOutputBuilder {
   37         -
    /// <p>The ARN of the invocation.</p>
   38         -
    /// This field is required.
   39         -
    pub fn invocation_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
   40         -
        self.invocation_arn = ::std::option::Option::Some(input.into());
   41         -
        self
   42         -
    }
   43         -
    /// <p>The ARN of the invocation.</p>
   44         -
    pub fn set_invocation_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
   45         -
        self.invocation_arn = input;
   46         -
        self
   47         -
    }
   48         -
    /// <p>The ARN of the invocation.</p>
   49         -
    pub fn get_invocation_arn(&self) -> &::std::option::Option<::std::string::String> {
   50         -
        &self.invocation_arn
   51         -
    }
   52         -
    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
   53         -
        self._request_id = Some(request_id.into());
   54         -
        self
   55         -
    }
   56         -
   57         -
    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
   58         -
        self._request_id = request_id;
   59         -
        self
   60         -
    }
   61         -
    /// Consumes the builder and constructs a [`StartAsyncInvokeOutput`](crate::operation::start_async_invoke::StartAsyncInvokeOutput).
   62         -
    /// This method will fail if any of the following fields are not set:
   63         -
    /// - [`invocation_arn`](crate::operation::start_async_invoke::builders::StartAsyncInvokeOutputBuilder::invocation_arn)
   64         -
    pub fn build(
   65         -
        self,
   66         -
    ) -> ::std::result::Result<crate::operation::start_async_invoke::StartAsyncInvokeOutput, ::aws_smithy_types::error::operation::BuildError> {
   67         -
        ::std::result::Result::Ok(crate::operation::start_async_invoke::StartAsyncInvokeOutput {
   68         -
            invocation_arn: self.invocation_arn.ok_or_else(|| {
   69         -
                ::aws_smithy_types::error::operation::BuildError::missing_field(
   70         -
                    "invocation_arn",
   71         -
                    "invocation_arn was not specified but it is required when building StartAsyncInvokeOutput",
   72         -
                )
   73         -
            })?,
   74         -
            _request_id: self._request_id,
   75         -
        })
   76         -
    }
   77         -
}