aws_sdk_s3/operation/put_bucket_intelligent_tiering_configuration/
builders.rs1pub use crate::operation::put_bucket_intelligent_tiering_configuration::_put_bucket_intelligent_tiering_configuration_output::PutBucketIntelligentTieringConfigurationOutputBuilder;
3
4pub use crate::operation::put_bucket_intelligent_tiering_configuration::_put_bucket_intelligent_tiering_configuration_input::PutBucketIntelligentTieringConfigurationInputBuilder;
5
6impl crate::operation::put_bucket_intelligent_tiering_configuration::builders::PutBucketIntelligentTieringConfigurationInputBuilder {
7    pub async fn send_with(
9        self,
10        client: &crate::Client,
11    ) -> ::std::result::Result<
12        crate::operation::put_bucket_intelligent_tiering_configuration::PutBucketIntelligentTieringConfigurationOutput,
13        ::aws_smithy_runtime_api::client::result::SdkError<
14            crate::operation::put_bucket_intelligent_tiering_configuration::PutBucketIntelligentTieringConfigurationError,
15            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16        >,
17    > {
18        let mut fluent_builder = client.put_bucket_intelligent_tiering_configuration();
19        fluent_builder.inner = self;
20        fluent_builder.send().await
21    }
22}
23#[derive(::std::clone::Clone, ::std::fmt::Debug)]
67pub struct PutBucketIntelligentTieringConfigurationFluentBuilder {
68    handle: ::std::sync::Arc<crate::client::Handle>,
69    inner: crate::operation::put_bucket_intelligent_tiering_configuration::builders::PutBucketIntelligentTieringConfigurationInputBuilder,
70    config_override: ::std::option::Option<crate::config::Builder>,
71}
72impl
73    crate::client::customize::internal::CustomizableSend<
74        crate::operation::put_bucket_intelligent_tiering_configuration::PutBucketIntelligentTieringConfigurationOutput,
75        crate::operation::put_bucket_intelligent_tiering_configuration::PutBucketIntelligentTieringConfigurationError,
76    > for PutBucketIntelligentTieringConfigurationFluentBuilder
77{
78    fn send(
79        self,
80        config_override: crate::config::Builder,
81    ) -> crate::client::customize::internal::BoxFuture<
82        crate::client::customize::internal::SendResult<
83            crate::operation::put_bucket_intelligent_tiering_configuration::PutBucketIntelligentTieringConfigurationOutput,
84            crate::operation::put_bucket_intelligent_tiering_configuration::PutBucketIntelligentTieringConfigurationError,
85        >,
86    > {
87        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
88    }
89}
90impl PutBucketIntelligentTieringConfigurationFluentBuilder {
91    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
93        Self {
94            handle,
95            inner: ::std::default::Default::default(),
96            config_override: ::std::option::Option::None,
97        }
98    }
99    pub fn as_input(
101        &self,
102    ) -> &crate::operation::put_bucket_intelligent_tiering_configuration::builders::PutBucketIntelligentTieringConfigurationInputBuilder {
103        &self.inner
104    }
105    pub async fn send(
114        self,
115    ) -> ::std::result::Result<
116        crate::operation::put_bucket_intelligent_tiering_configuration::PutBucketIntelligentTieringConfigurationOutput,
117        ::aws_smithy_runtime_api::client::result::SdkError<
118            crate::operation::put_bucket_intelligent_tiering_configuration::PutBucketIntelligentTieringConfigurationError,
119            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
120        >,
121    > {
122        let input = self
123            .inner
124            .build()
125            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
126        let runtime_plugins =
127            crate::operation::put_bucket_intelligent_tiering_configuration::PutBucketIntelligentTieringConfiguration::operation_runtime_plugins(
128                self.handle.runtime_plugins.clone(),
129                &self.handle.conf,
130                self.config_override,
131            );
132        crate::operation::put_bucket_intelligent_tiering_configuration::PutBucketIntelligentTieringConfiguration::orchestrate(&runtime_plugins, input)
133            .await
134    }
135
136    pub fn customize(
138        self,
139    ) -> crate::client::customize::CustomizableOperation<
140        crate::operation::put_bucket_intelligent_tiering_configuration::PutBucketIntelligentTieringConfigurationOutput,
141        crate::operation::put_bucket_intelligent_tiering_configuration::PutBucketIntelligentTieringConfigurationError,
142        Self,
143    > {
144        crate::client::customize::CustomizableOperation::new(self)
145    }
146    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
147        self.set_config_override(::std::option::Option::Some(config_override.into()));
148        self
149    }
150
151    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
152        self.config_override = config_override;
153        self
154    }
155    pub fn bucket(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
157        self.inner = self.inner.bucket(input.into());
158        self
159    }
160    pub fn set_bucket(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
162        self.inner = self.inner.set_bucket(input);
163        self
164    }
165    pub fn get_bucket(&self) -> &::std::option::Option<::std::string::String> {
167        self.inner.get_bucket()
168    }
169    pub fn id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
171        self.inner = self.inner.id(input.into());
172        self
173    }
174    pub fn set_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
176        self.inner = self.inner.set_id(input);
177        self
178    }
179    pub fn get_id(&self) -> &::std::option::Option<::std::string::String> {
181        self.inner.get_id()
182    }
183    pub fn intelligent_tiering_configuration(mut self, input: crate::types::IntelligentTieringConfiguration) -> Self {
185        self.inner = self.inner.intelligent_tiering_configuration(input);
186        self
187    }
188    pub fn set_intelligent_tiering_configuration(mut self, input: ::std::option::Option<crate::types::IntelligentTieringConfiguration>) -> Self {
190        self.inner = self.inner.set_intelligent_tiering_configuration(input);
191        self
192    }
193    pub fn get_intelligent_tiering_configuration(&self) -> &::std::option::Option<crate::types::IntelligentTieringConfiguration> {
195        self.inner.get_intelligent_tiering_configuration()
196    }
197}