aws-sdk-bedrock 1.145.0

AWS SDK for Amazon Bedrock
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
pub use crate::operation::update_marketplace_model_endpoint::_update_marketplace_model_endpoint_input::UpdateMarketplaceModelEndpointInputBuilder;

pub use crate::operation::update_marketplace_model_endpoint::_update_marketplace_model_endpoint_output::UpdateMarketplaceModelEndpointOutputBuilder;

impl crate::operation::update_marketplace_model_endpoint::builders::UpdateMarketplaceModelEndpointInputBuilder {
    /// Sends a request with this input using the given client.
    pub async fn send_with(
        self,
        client: &crate::Client,
    ) -> ::std::result::Result<
        crate::operation::update_marketplace_model_endpoint::UpdateMarketplaceModelEndpointOutput,
        ::aws_smithy_runtime_api::client::result::SdkError<
            crate::operation::update_marketplace_model_endpoint::UpdateMarketplaceModelEndpointError,
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
        >,
    > {
        let mut fluent_builder = client.update_marketplace_model_endpoint();
        fluent_builder.inner = self;
        fluent_builder.send().await
    }
}
/// Fluent builder constructing a request to `UpdateMarketplaceModelEndpoint`.
///
/// <p>Updates the configuration of an existing endpoint for a model from Amazon Bedrock Marketplace.</p>
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
pub struct UpdateMarketplaceModelEndpointFluentBuilder {
    handle: ::std::sync::Arc<crate::client::Handle>,
    inner: crate::operation::update_marketplace_model_endpoint::builders::UpdateMarketplaceModelEndpointInputBuilder,
    config_override: ::std::option::Option<crate::config::Builder>,
}
impl
    crate::client::customize::internal::CustomizableSend<
        crate::operation::update_marketplace_model_endpoint::UpdateMarketplaceModelEndpointOutput,
        crate::operation::update_marketplace_model_endpoint::UpdateMarketplaceModelEndpointError,
    > for UpdateMarketplaceModelEndpointFluentBuilder
{
    fn send(
        self,
        config_override: crate::config::Builder,
    ) -> crate::client::customize::internal::BoxFuture<
        crate::client::customize::internal::SendResult<
            crate::operation::update_marketplace_model_endpoint::UpdateMarketplaceModelEndpointOutput,
            crate::operation::update_marketplace_model_endpoint::UpdateMarketplaceModelEndpointError,
        >,
    > {
        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
    }
}
impl UpdateMarketplaceModelEndpointFluentBuilder {
    /// Creates a new `UpdateMarketplaceModelEndpointFluentBuilder`.
    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
        Self {
            handle,
            inner: ::std::default::Default::default(),
            config_override: ::std::option::Option::None,
        }
    }
    /// Access the UpdateMarketplaceModelEndpoint as a reference.
    pub fn as_input(&self) -> &crate::operation::update_marketplace_model_endpoint::builders::UpdateMarketplaceModelEndpointInputBuilder {
        &self.inner
    }
    /// Sends the request and returns the response.
    ///
    /// If an error occurs, an `SdkError` will be returned with additional details that
    /// can be matched against.
    ///
    /// By default, any retryable failures will be retried twice. Retry behavior
    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
    /// set when configuring the client.
    pub async fn send(
        self,
    ) -> ::std::result::Result<
        crate::operation::update_marketplace_model_endpoint::UpdateMarketplaceModelEndpointOutput,
        ::aws_smithy_runtime_api::client::result::SdkError<
            crate::operation::update_marketplace_model_endpoint::UpdateMarketplaceModelEndpointError,
            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
        >,
    > {
        let input = self
            .inner
            .build()
            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
        let runtime_plugins = crate::operation::update_marketplace_model_endpoint::UpdateMarketplaceModelEndpoint::operation_runtime_plugins(
            self.handle.runtime_plugins.clone(),
            &self.handle.conf,
            self.config_override,
        );
        crate::operation::update_marketplace_model_endpoint::UpdateMarketplaceModelEndpoint::orchestrate(&runtime_plugins, input).await
    }

    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
    pub fn customize(
        self,
    ) -> crate::client::customize::CustomizableOperation<
        crate::operation::update_marketplace_model_endpoint::UpdateMarketplaceModelEndpointOutput,
        crate::operation::update_marketplace_model_endpoint::UpdateMarketplaceModelEndpointError,
        Self,
    > {
        crate::client::customize::CustomizableOperation::new(self)
    }
    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
        self.set_config_override(::std::option::Option::Some(config_override.into()));
        self
    }

    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
        self.config_override = config_override;
        self
    }
    /// <p>The Amazon Resource Name (ARN) of the endpoint you want to update.</p>
    pub fn endpoint_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.inner = self.inner.endpoint_arn(input.into());
        self
    }
    /// <p>The Amazon Resource Name (ARN) of the endpoint you want to update.</p>
    pub fn set_endpoint_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.inner = self.inner.set_endpoint_arn(input);
        self
    }
    /// <p>The Amazon Resource Name (ARN) of the endpoint you want to update.</p>
    pub fn get_endpoint_arn(&self) -> &::std::option::Option<::std::string::String> {
        self.inner.get_endpoint_arn()
    }
    /// <p>The new configuration for the endpoint, including the number and type of instances to use.</p>
    pub fn endpoint_config(mut self, input: crate::types::EndpointConfig) -> Self {
        self.inner = self.inner.endpoint_config(input);
        self
    }
    /// <p>The new configuration for the endpoint, including the number and type of instances to use.</p>
    pub fn set_endpoint_config(mut self, input: ::std::option::Option<crate::types::EndpointConfig>) -> Self {
        self.inner = self.inner.set_endpoint_config(input);
        self
    }
    /// <p>The new configuration for the endpoint, including the number and type of instances to use.</p>
    pub fn get_endpoint_config(&self) -> &::std::option::Option<crate::types::EndpointConfig> {
        self.inner.get_endpoint_config()
    }
    /// <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This token is listed as not required because Amazon Web Services SDKs automatically generate it for you and set this parameter. If you're not using the Amazon Web Services SDK or the CLI, you must provide this token or the action will fail.</p>
    pub fn client_request_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.inner = self.inner.client_request_token(input.into());
        self
    }
    /// <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This token is listed as not required because Amazon Web Services SDKs automatically generate it for you and set this parameter. If you're not using the Amazon Web Services SDK or the CLI, you must provide this token or the action will fail.</p>
    pub fn set_client_request_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.inner = self.inner.set_client_request_token(input);
        self
    }
    /// <p>A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This token is listed as not required because Amazon Web Services SDKs automatically generate it for you and set this parameter. If you're not using the Amazon Web Services SDK or the CLI, you must provide this token or the action will fail.</p>
    pub fn get_client_request_token(&self) -> &::std::option::Option<::std::string::String> {
        self.inner.get_client_request_token()
    }
}