aws_sdk_s3/operation/write_get_object_response/builders.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::write_get_object_response::_write_get_object_response_output::WriteGetObjectResponseOutputBuilder;
3
4pub use crate::operation::write_get_object_response::_write_get_object_response_input::WriteGetObjectResponseInputBuilder;
5
6impl crate::operation::write_get_object_response::builders::WriteGetObjectResponseInputBuilder {
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::write_get_object_response::WriteGetObjectResponseOutput,
13 ::aws_smithy_runtime_api::client::result::SdkError<
14 crate::operation::write_get_object_response::WriteGetObjectResponseError,
15 ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16 >,
17 > {
18 let mut fluent_builder = client.write_get_object_response();
19 fluent_builder.inner = self;
20 fluent_builder.send().await
21 }
22}
23/// Fluent builder constructing a request to `WriteGetObjectResponse`.
24///
25/// <note>
26/// <p>This operation is not supported by directory buckets.</p>
27/// </note>
28/// <p>Passes transformed objects to a <code>GetObject</code> operation when using Object Lambda access points. For information about Object Lambda access points, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/transforming-objects.html">Transforming objects with Object Lambda access points</a> in the <i>Amazon S3 User Guide</i>.</p>
29/// <p>This operation supports metadata that can be returned by <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html">GetObject</a>, in addition to <code>RequestRoute</code>, <code>RequestToken</code>, <code>StatusCode</code>, <code>ErrorCode</code>, and <code>ErrorMessage</code>. The <code>GetObject</code> response metadata is supported so that the <code>WriteGetObjectResponse</code> caller, typically an Lambda function, can provide the same metadata when it internally invokes <code>GetObject</code>. When <code>WriteGetObjectResponse</code> is called by a customer-owned Lambda function, the metadata returned to the end user <code>GetObject</code> call might differ from what Amazon S3 would normally return.</p>
30/// <p>You can include any number of metadata headers. When including a metadata header, it should be prefaced with <code>x-amz-meta</code>. For example, <code>x-amz-meta-my-custom-header: MyCustomValue</code>. The primary use case for this is to forward <code>GetObject</code> metadata.</p>
31/// <p>Amazon Web Services provides some prebuilt Lambda functions that you can use with S3 Object Lambda to detect and redact personally identifiable information (PII) and decompress S3 objects. These Lambda functions are available in the Amazon Web Services Serverless Application Repository, and can be selected through the Amazon Web Services Management Console when you create your Object Lambda access point.</p>
32/// <p>Example 1: PII Access Control - This Lambda function uses Amazon Comprehend, a natural language processing (NLP) service using machine learning to find insights and relationships in text. It automatically detects personally identifiable information (PII) such as names, addresses, dates, credit card numbers, and social security numbers from documents in your Amazon S3 bucket.</p>
33/// <p>Example 2: PII Redaction - This Lambda function uses Amazon Comprehend, a natural language processing (NLP) service using machine learning to find insights and relationships in text. It automatically redacts personally identifiable information (PII) such as names, addresses, dates, credit card numbers, and social security numbers from documents in your Amazon S3 bucket.</p>
34/// <p>Example 3: Decompression - The Lambda function S3ObjectLambdaDecompression, is equipped to decompress objects stored in S3 in one of six compressed file formats including bzip2, gzip, snappy, zlib, zstandard and ZIP.</p>
35/// <p>For information on how to view and use these functions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-examples.html">Using Amazon Web Services built Lambda functions</a> in the <i>Amazon S3 User Guide</i>.</p>
36#[derive(::std::fmt::Debug)]
37pub struct WriteGetObjectResponseFluentBuilder {
38 handle: ::std::sync::Arc<crate::client::Handle>,
39 inner: crate::operation::write_get_object_response::builders::WriteGetObjectResponseInputBuilder,
40 config_override: ::std::option::Option<crate::config::Builder>,
41}
42impl
43 crate::client::customize::internal::CustomizableSend<
44 crate::operation::write_get_object_response::WriteGetObjectResponseOutput,
45 crate::operation::write_get_object_response::WriteGetObjectResponseError,
46 > for WriteGetObjectResponseFluentBuilder
47{
48 fn send(
49 self,
50 config_override: crate::config::Builder,
51 ) -> crate::client::customize::internal::BoxFuture<
52 crate::client::customize::internal::SendResult<
53 crate::operation::write_get_object_response::WriteGetObjectResponseOutput,
54 crate::operation::write_get_object_response::WriteGetObjectResponseError,
55 >,
56 > {
57 ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
58 }
59}
60impl WriteGetObjectResponseFluentBuilder {
61 /// Creates a new `WriteGetObjectResponseFluentBuilder`.
62 pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
63 Self {
64 handle,
65 inner: ::std::default::Default::default(),
66 config_override: ::std::option::Option::None,
67 }
68 }
69 /// Access the WriteGetObjectResponse as a reference.
70 pub fn as_input(&self) -> &crate::operation::write_get_object_response::builders::WriteGetObjectResponseInputBuilder {
71 &self.inner
72 }
73 /// Sends the request and returns the response.
74 ///
75 /// If an error occurs, an `SdkError` will be returned with additional details that
76 /// can be matched against.
77 ///
78 /// By default, any retryable failures will be retried twice. Retry behavior
79 /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
80 /// set when configuring the client.
81 pub async fn send(
82 self,
83 ) -> ::std::result::Result<
84 crate::operation::write_get_object_response::WriteGetObjectResponseOutput,
85 ::aws_smithy_runtime_api::client::result::SdkError<
86 crate::operation::write_get_object_response::WriteGetObjectResponseError,
87 ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
88 >,
89 > {
90 let input = self
91 .inner
92 .build()
93 .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
94 let runtime_plugins = crate::operation::write_get_object_response::WriteGetObjectResponse::operation_runtime_plugins(
95 self.handle.runtime_plugins.clone(),
96 &self.handle.conf,
97 self.config_override,
98 );
99 crate::operation::write_get_object_response::WriteGetObjectResponse::orchestrate(&runtime_plugins, input).await
100 }
101
102 /// Consumes this builder, creating a customizable operation that can be modified before being sent.
103 pub fn customize(
104 self,
105 ) -> crate::client::customize::CustomizableOperation<
106 crate::operation::write_get_object_response::WriteGetObjectResponseOutput,
107 crate::operation::write_get_object_response::WriteGetObjectResponseError,
108 Self,
109 > {
110 crate::client::customize::CustomizableOperation::new(self)
111 }
112 pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
113 self.set_config_override(::std::option::Option::Some(config_override.into()));
114 self
115 }
116
117 pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
118 self.config_override = config_override;
119 self
120 }
121 /// <p>Route prefix to the HTTP URL generated.</p>
122 pub fn request_route(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
123 self.inner = self.inner.request_route(input.into());
124 self
125 }
126 /// <p>Route prefix to the HTTP URL generated.</p>
127 pub fn set_request_route(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
128 self.inner = self.inner.set_request_route(input);
129 self
130 }
131 /// <p>Route prefix to the HTTP URL generated.</p>
132 pub fn get_request_route(&self) -> &::std::option::Option<::std::string::String> {
133 self.inner.get_request_route()
134 }
135 /// <p>A single use encrypted token that maps <code>WriteGetObjectResponse</code> to the end user <code>GetObject</code> request.</p>
136 pub fn request_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
137 self.inner = self.inner.request_token(input.into());
138 self
139 }
140 /// <p>A single use encrypted token that maps <code>WriteGetObjectResponse</code> to the end user <code>GetObject</code> request.</p>
141 pub fn set_request_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
142 self.inner = self.inner.set_request_token(input);
143 self
144 }
145 /// <p>A single use encrypted token that maps <code>WriteGetObjectResponse</code> to the end user <code>GetObject</code> request.</p>
146 pub fn get_request_token(&self) -> &::std::option::Option<::std::string::String> {
147 self.inner.get_request_token()
148 }
149 /// <p>The object data.</p>
150 pub fn body(mut self, input: ::aws_smithy_types::byte_stream::ByteStream) -> Self {
151 self.inner = self.inner.body(input);
152 self
153 }
154 /// <p>The object data.</p>
155 pub fn set_body(mut self, input: ::std::option::Option<::aws_smithy_types::byte_stream::ByteStream>) -> Self {
156 self.inner = self.inner.set_body(input);
157 self
158 }
159 /// <p>The object data.</p>
160 pub fn get_body(&self) -> &::std::option::Option<::aws_smithy_types::byte_stream::ByteStream> {
161 self.inner.get_body()
162 }
163 /// <p>The integer status code for an HTTP response of a corresponding <code>GetObject</code> request. The following is a list of status codes.</p>
164 /// <ul>
165 /// <li>
166 /// <p><code>200 - OK</code></p></li>
167 /// <li>
168 /// <p><code>206 - Partial Content</code></p></li>
169 /// <li>
170 /// <p><code>304 - Not Modified</code></p></li>
171 /// <li>
172 /// <p><code>400 - Bad Request</code></p></li>
173 /// <li>
174 /// <p><code>401 - Unauthorized</code></p></li>
175 /// <li>
176 /// <p><code>403 - Forbidden</code></p></li>
177 /// <li>
178 /// <p><code>404 - Not Found</code></p></li>
179 /// <li>
180 /// <p><code>405 - Method Not Allowed</code></p></li>
181 /// <li>
182 /// <p><code>409 - Conflict</code></p></li>
183 /// <li>
184 /// <p><code>411 - Length Required</code></p></li>
185 /// <li>
186 /// <p><code>412 - Precondition Failed</code></p></li>
187 /// <li>
188 /// <p><code>416 - Range Not Satisfiable</code></p></li>
189 /// <li>
190 /// <p><code>500 - Internal Server Error</code></p></li>
191 /// <li>
192 /// <p><code>503 - Service Unavailable</code></p></li>
193 /// </ul>
194 pub fn status_code(mut self, input: i32) -> Self {
195 self.inner = self.inner.status_code(input);
196 self
197 }
198 /// <p>The integer status code for an HTTP response of a corresponding <code>GetObject</code> request. The following is a list of status codes.</p>
199 /// <ul>
200 /// <li>
201 /// <p><code>200 - OK</code></p></li>
202 /// <li>
203 /// <p><code>206 - Partial Content</code></p></li>
204 /// <li>
205 /// <p><code>304 - Not Modified</code></p></li>
206 /// <li>
207 /// <p><code>400 - Bad Request</code></p></li>
208 /// <li>
209 /// <p><code>401 - Unauthorized</code></p></li>
210 /// <li>
211 /// <p><code>403 - Forbidden</code></p></li>
212 /// <li>
213 /// <p><code>404 - Not Found</code></p></li>
214 /// <li>
215 /// <p><code>405 - Method Not Allowed</code></p></li>
216 /// <li>
217 /// <p><code>409 - Conflict</code></p></li>
218 /// <li>
219 /// <p><code>411 - Length Required</code></p></li>
220 /// <li>
221 /// <p><code>412 - Precondition Failed</code></p></li>
222 /// <li>
223 /// <p><code>416 - Range Not Satisfiable</code></p></li>
224 /// <li>
225 /// <p><code>500 - Internal Server Error</code></p></li>
226 /// <li>
227 /// <p><code>503 - Service Unavailable</code></p></li>
228 /// </ul>
229 pub fn set_status_code(mut self, input: ::std::option::Option<i32>) -> Self {
230 self.inner = self.inner.set_status_code(input);
231 self
232 }
233 /// <p>The integer status code for an HTTP response of a corresponding <code>GetObject</code> request. The following is a list of status codes.</p>
234 /// <ul>
235 /// <li>
236 /// <p><code>200 - OK</code></p></li>
237 /// <li>
238 /// <p><code>206 - Partial Content</code></p></li>
239 /// <li>
240 /// <p><code>304 - Not Modified</code></p></li>
241 /// <li>
242 /// <p><code>400 - Bad Request</code></p></li>
243 /// <li>
244 /// <p><code>401 - Unauthorized</code></p></li>
245 /// <li>
246 /// <p><code>403 - Forbidden</code></p></li>
247 /// <li>
248 /// <p><code>404 - Not Found</code></p></li>
249 /// <li>
250 /// <p><code>405 - Method Not Allowed</code></p></li>
251 /// <li>
252 /// <p><code>409 - Conflict</code></p></li>
253 /// <li>
254 /// <p><code>411 - Length Required</code></p></li>
255 /// <li>
256 /// <p><code>412 - Precondition Failed</code></p></li>
257 /// <li>
258 /// <p><code>416 - Range Not Satisfiable</code></p></li>
259 /// <li>
260 /// <p><code>500 - Internal Server Error</code></p></li>
261 /// <li>
262 /// <p><code>503 - Service Unavailable</code></p></li>
263 /// </ul>
264 pub fn get_status_code(&self) -> &::std::option::Option<i32> {
265 self.inner.get_status_code()
266 }
267 /// <p>A string that uniquely identifies an error condition. Returned in the <code> tag of the error XML response for a corresponding <code>GetObject</code> call. Cannot be used with a successful <code>StatusCode</code> header or when the transformed object is provided in the body. All error codes from S3 are sentence-cased. The regular expression (regex) value is <code>"^\[A-Z\]\[a-zA-Z\]+$"</code>.</code></p>
268 pub fn error_code(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
269 self.inner = self.inner.error_code(input.into());
270 self
271 }
272 /// <p>A string that uniquely identifies an error condition. Returned in the <code> tag of the error XML response for a corresponding <code>GetObject</code> call. Cannot be used with a successful <code>StatusCode</code> header or when the transformed object is provided in the body. All error codes from S3 are sentence-cased. The regular expression (regex) value is <code>"^\[A-Z\]\[a-zA-Z\]+$"</code>.</code></p>
273 pub fn set_error_code(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
274 self.inner = self.inner.set_error_code(input);
275 self
276 }
277 /// <p>A string that uniquely identifies an error condition. Returned in the <code> tag of the error XML response for a corresponding <code>GetObject</code> call. Cannot be used with a successful <code>StatusCode</code> header or when the transformed object is provided in the body. All error codes from S3 are sentence-cased. The regular expression (regex) value is <code>"^\[A-Z\]\[a-zA-Z\]+$"</code>.</code></p>
278 pub fn get_error_code(&self) -> &::std::option::Option<::std::string::String> {
279 self.inner.get_error_code()
280 }
281 /// <p>Contains a generic description of the error condition. Returned in the <message>
282 /// tag of the error XML response for a corresponding
283 /// <code>GetObject</code> call. Cannot be used with a successful
284 /// <code>StatusCode</code> header or when the transformed object is provided in body.
285 /// </message></p>
286 pub fn error_message(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
287 self.inner = self.inner.error_message(input.into());
288 self
289 }
290 /// <p>Contains a generic description of the error condition. Returned in the <message>
291 /// tag of the error XML response for a corresponding
292 /// <code>GetObject</code> call. Cannot be used with a successful
293 /// <code>StatusCode</code> header or when the transformed object is provided in body.
294 /// </message></p>
295 pub fn set_error_message(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
296 self.inner = self.inner.set_error_message(input);
297 self
298 }
299 /// <p>Contains a generic description of the error condition. Returned in the <message>
300 /// tag of the error XML response for a corresponding
301 /// <code>GetObject</code> call. Cannot be used with a successful
302 /// <code>StatusCode</code> header or when the transformed object is provided in body.
303 /// </message></p>
304 pub fn get_error_message(&self) -> &::std::option::Option<::std::string::String> {
305 self.inner.get_error_message()
306 }
307 /// <p>Indicates that a range of bytes was specified.</p>
308 pub fn accept_ranges(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
309 self.inner = self.inner.accept_ranges(input.into());
310 self
311 }
312 /// <p>Indicates that a range of bytes was specified.</p>
313 pub fn set_accept_ranges(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
314 self.inner = self.inner.set_accept_ranges(input);
315 self
316 }
317 /// <p>Indicates that a range of bytes was specified.</p>
318 pub fn get_accept_ranges(&self) -> &::std::option::Option<::std::string::String> {
319 self.inner.get_accept_ranges()
320 }
321 /// <p>Specifies caching behavior along the request/reply chain.</p>
322 pub fn cache_control(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
323 self.inner = self.inner.cache_control(input.into());
324 self
325 }
326 /// <p>Specifies caching behavior along the request/reply chain.</p>
327 pub fn set_cache_control(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
328 self.inner = self.inner.set_cache_control(input);
329 self
330 }
331 /// <p>Specifies caching behavior along the request/reply chain.</p>
332 pub fn get_cache_control(&self) -> &::std::option::Option<::std::string::String> {
333 self.inner.get_cache_control()
334 }
335 /// <p>Specifies presentational information for the object.</p>
336 pub fn content_disposition(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
337 self.inner = self.inner.content_disposition(input.into());
338 self
339 }
340 /// <p>Specifies presentational information for the object.</p>
341 pub fn set_content_disposition(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
342 self.inner = self.inner.set_content_disposition(input);
343 self
344 }
345 /// <p>Specifies presentational information for the object.</p>
346 pub fn get_content_disposition(&self) -> &::std::option::Option<::std::string::String> {
347 self.inner.get_content_disposition()
348 }
349 /// <p>Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.</p>
350 pub fn content_encoding(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
351 self.inner = self.inner.content_encoding(input.into());
352 self
353 }
354 /// <p>Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.</p>
355 pub fn set_content_encoding(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
356 self.inner = self.inner.set_content_encoding(input);
357 self
358 }
359 /// <p>Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.</p>
360 pub fn get_content_encoding(&self) -> &::std::option::Option<::std::string::String> {
361 self.inner.get_content_encoding()
362 }
363 /// <p>The language the content is in.</p>
364 pub fn content_language(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
365 self.inner = self.inner.content_language(input.into());
366 self
367 }
368 /// <p>The language the content is in.</p>
369 pub fn set_content_language(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
370 self.inner = self.inner.set_content_language(input);
371 self
372 }
373 /// <p>The language the content is in.</p>
374 pub fn get_content_language(&self) -> &::std::option::Option<::std::string::String> {
375 self.inner.get_content_language()
376 }
377 /// <p>The size of the content body in bytes.</p>
378 pub fn content_length(mut self, input: i64) -> Self {
379 self.inner = self.inner.content_length(input);
380 self
381 }
382 /// <p>The size of the content body in bytes.</p>
383 pub fn set_content_length(mut self, input: ::std::option::Option<i64>) -> Self {
384 self.inner = self.inner.set_content_length(input);
385 self
386 }
387 /// <p>The size of the content body in bytes.</p>
388 pub fn get_content_length(&self) -> &::std::option::Option<i64> {
389 self.inner.get_content_length()
390 }
391 /// <p>The portion of the object returned in the response.</p>
392 pub fn content_range(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
393 self.inner = self.inner.content_range(input.into());
394 self
395 }
396 /// <p>The portion of the object returned in the response.</p>
397 pub fn set_content_range(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
398 self.inner = self.inner.set_content_range(input);
399 self
400 }
401 /// <p>The portion of the object returned in the response.</p>
402 pub fn get_content_range(&self) -> &::std::option::Option<::std::string::String> {
403 self.inner.get_content_range()
404 }
405 /// <p>A standard MIME type describing the format of the object data.</p>
406 pub fn content_type(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
407 self.inner = self.inner.content_type(input.into());
408 self
409 }
410 /// <p>A standard MIME type describing the format of the object data.</p>
411 pub fn set_content_type(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
412 self.inner = self.inner.set_content_type(input);
413 self
414 }
415 /// <p>A standard MIME type describing the format of the object data.</p>
416 pub fn get_content_type(&self) -> &::std::option::Option<::std::string::String> {
417 self.inner.get_content_type()
418 }
419 /// <p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 32-bit CRC32 checksum of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
420 /// <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p>
421 /// <p></p>
422 pub fn checksum_crc32(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
423 self.inner = self.inner.checksum_crc32(input.into());
424 self
425 }
426 /// <p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 32-bit CRC32 checksum of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
427 /// <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p>
428 /// <p></p>
429 pub fn set_checksum_crc32(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
430 self.inner = self.inner.set_checksum_crc32(input);
431 self
432 }
433 /// <p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 32-bit CRC32 checksum of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
434 /// <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p>
435 /// <p></p>
436 pub fn get_checksum_crc32(&self) -> &::std::option::Option<::std::string::String> {
437 self.inner.get_checksum_crc32()
438 }
439 /// <p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 32-bit CRC32C checksum of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
440 /// <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p>
441 pub fn checksum_crc32_c(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
442 self.inner = self.inner.checksum_crc32_c(input.into());
443 self
444 }
445 /// <p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 32-bit CRC32C checksum of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
446 /// <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p>
447 pub fn set_checksum_crc32_c(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
448 self.inner = self.inner.set_checksum_crc32_c(input);
449 self
450 }
451 /// <p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 32-bit CRC32C checksum of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
452 /// <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p>
453 pub fn get_checksum_crc32_c(&self) -> &::std::option::Option<::std::string::String> {
454 self.inner.get_checksum_crc32_c()
455 }
456 /// <p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 160-bit SHA-1 digest of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
457 /// <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p>
458 pub fn checksum_sha1(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
459 self.inner = self.inner.checksum_sha1(input.into());
460 self
461 }
462 /// <p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 160-bit SHA-1 digest of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
463 /// <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p>
464 pub fn set_checksum_sha1(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
465 self.inner = self.inner.set_checksum_sha1(input);
466 self
467 }
468 /// <p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 160-bit SHA-1 digest of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
469 /// <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p>
470 pub fn get_checksum_sha1(&self) -> &::std::option::Option<::std::string::String> {
471 self.inner.get_checksum_sha1()
472 }
473 /// <p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 256-bit SHA-256 digest of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
474 /// <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p>
475 pub fn checksum_sha256(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
476 self.inner = self.inner.checksum_sha256(input.into());
477 self
478 }
479 /// <p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 256-bit SHA-256 digest of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
480 /// <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p>
481 pub fn set_checksum_sha256(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
482 self.inner = self.inner.set_checksum_sha256(input);
483 self
484 }
485 /// <p>This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This specifies the base64-encoded, 256-bit SHA-256 digest of the object returned by the Object Lambda function. This may not match the checksum for the object stored in Amazon S3. Amazon S3 will perform validation of the checksum values only when the original <code>GetObject</code> request required checksum validation. For more information about checksums, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
486 /// <p>Only one checksum header can be specified at a time. If you supply multiple checksum headers, this request will fail.</p>
487 pub fn get_checksum_sha256(&self) -> &::std::option::Option<::std::string::String> {
488 self.inner.get_checksum_sha256()
489 }
490 /// <p>Specifies whether an object stored in Amazon S3 is (<code>true</code>) or is not (<code>false</code>) a delete marker.</p>
491 pub fn delete_marker(mut self, input: bool) -> Self {
492 self.inner = self.inner.delete_marker(input);
493 self
494 }
495 /// <p>Specifies whether an object stored in Amazon S3 is (<code>true</code>) or is not (<code>false</code>) a delete marker.</p>
496 pub fn set_delete_marker(mut self, input: ::std::option::Option<bool>) -> Self {
497 self.inner = self.inner.set_delete_marker(input);
498 self
499 }
500 /// <p>Specifies whether an object stored in Amazon S3 is (<code>true</code>) or is not (<code>false</code>) a delete marker.</p>
501 pub fn get_delete_marker(&self) -> &::std::option::Option<bool> {
502 self.inner.get_delete_marker()
503 }
504 /// <p>An opaque identifier assigned by a web server to a specific version of a resource found at a URL.</p>
505 pub fn e_tag(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
506 self.inner = self.inner.e_tag(input.into());
507 self
508 }
509 /// <p>An opaque identifier assigned by a web server to a specific version of a resource found at a URL.</p>
510 pub fn set_e_tag(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
511 self.inner = self.inner.set_e_tag(input);
512 self
513 }
514 /// <p>An opaque identifier assigned by a web server to a specific version of a resource found at a URL.</p>
515 pub fn get_e_tag(&self) -> &::std::option::Option<::std::string::String> {
516 self.inner.get_e_tag()
517 }
518 /// <p>The date and time at which the object is no longer cacheable.</p>
519 pub fn expires(mut self, input: ::aws_smithy_types::DateTime) -> Self {
520 self.inner = self.inner.expires(input);
521 self
522 }
523 /// <p>The date and time at which the object is no longer cacheable.</p>
524 pub fn set_expires(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
525 self.inner = self.inner.set_expires(input);
526 self
527 }
528 /// <p>The date and time at which the object is no longer cacheable.</p>
529 pub fn get_expires(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
530 self.inner.get_expires()
531 }
532 /// <p>If the object expiration is configured (see PUT Bucket lifecycle), the response includes this header. It includes the <code>expiry-date</code> and <code>rule-id</code> key-value pairs that provide the object expiration information. The value of the <code>rule-id</code> is URL-encoded.</p>
533 pub fn expiration(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
534 self.inner = self.inner.expiration(input.into());
535 self
536 }
537 /// <p>If the object expiration is configured (see PUT Bucket lifecycle), the response includes this header. It includes the <code>expiry-date</code> and <code>rule-id</code> key-value pairs that provide the object expiration information. The value of the <code>rule-id</code> is URL-encoded.</p>
538 pub fn set_expiration(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
539 self.inner = self.inner.set_expiration(input);
540 self
541 }
542 /// <p>If the object expiration is configured (see PUT Bucket lifecycle), the response includes this header. It includes the <code>expiry-date</code> and <code>rule-id</code> key-value pairs that provide the object expiration information. The value of the <code>rule-id</code> is URL-encoded.</p>
543 pub fn get_expiration(&self) -> &::std::option::Option<::std::string::String> {
544 self.inner.get_expiration()
545 }
546 /// <p>The date and time that the object was last modified.</p>
547 pub fn last_modified(mut self, input: ::aws_smithy_types::DateTime) -> Self {
548 self.inner = self.inner.last_modified(input);
549 self
550 }
551 /// <p>The date and time that the object was last modified.</p>
552 pub fn set_last_modified(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
553 self.inner = self.inner.set_last_modified(input);
554 self
555 }
556 /// <p>The date and time that the object was last modified.</p>
557 pub fn get_last_modified(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
558 self.inner.get_last_modified()
559 }
560 /// <p>Set to the number of metadata entries not returned in <code>x-amz-meta</code> headers. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.</p>
561 pub fn missing_meta(mut self, input: i32) -> Self {
562 self.inner = self.inner.missing_meta(input);
563 self
564 }
565 /// <p>Set to the number of metadata entries not returned in <code>x-amz-meta</code> headers. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.</p>
566 pub fn set_missing_meta(mut self, input: ::std::option::Option<i32>) -> Self {
567 self.inner = self.inner.set_missing_meta(input);
568 self
569 }
570 /// <p>Set to the number of metadata entries not returned in <code>x-amz-meta</code> headers. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.</p>
571 pub fn get_missing_meta(&self) -> &::std::option::Option<i32> {
572 self.inner.get_missing_meta()
573 }
574 ///
575 /// Adds a key-value pair to `Metadata`.
576 ///
577 /// To override the contents of this collection use [`set_metadata`](Self::set_metadata).
578 ///
579 /// <p>A map of metadata to store with the object in S3.</p>
580 pub fn metadata(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
581 self.inner = self.inner.metadata(k.into(), v.into());
582 self
583 }
584 /// <p>A map of metadata to store with the object in S3.</p>
585 pub fn set_metadata(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
586 self.inner = self.inner.set_metadata(input);
587 self
588 }
589 /// <p>A map of metadata to store with the object in S3.</p>
590 pub fn get_metadata(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
591 self.inner.get_metadata()
592 }
593 /// <p>Indicates whether an object stored in Amazon S3 has Object Lock enabled. For more information about S3 Object Lock, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html">Object Lock</a>.</p>
594 pub fn object_lock_mode(mut self, input: crate::types::ObjectLockMode) -> Self {
595 self.inner = self.inner.object_lock_mode(input);
596 self
597 }
598 /// <p>Indicates whether an object stored in Amazon S3 has Object Lock enabled. For more information about S3 Object Lock, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html">Object Lock</a>.</p>
599 pub fn set_object_lock_mode(mut self, input: ::std::option::Option<crate::types::ObjectLockMode>) -> Self {
600 self.inner = self.inner.set_object_lock_mode(input);
601 self
602 }
603 /// <p>Indicates whether an object stored in Amazon S3 has Object Lock enabled. For more information about S3 Object Lock, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock.html">Object Lock</a>.</p>
604 pub fn get_object_lock_mode(&self) -> &::std::option::Option<crate::types::ObjectLockMode> {
605 self.inner.get_object_lock_mode()
606 }
607 /// <p>Indicates whether an object stored in Amazon S3 has an active legal hold.</p>
608 pub fn object_lock_legal_hold_status(mut self, input: crate::types::ObjectLockLegalHoldStatus) -> Self {
609 self.inner = self.inner.object_lock_legal_hold_status(input);
610 self
611 }
612 /// <p>Indicates whether an object stored in Amazon S3 has an active legal hold.</p>
613 pub fn set_object_lock_legal_hold_status(mut self, input: ::std::option::Option<crate::types::ObjectLockLegalHoldStatus>) -> Self {
614 self.inner = self.inner.set_object_lock_legal_hold_status(input);
615 self
616 }
617 /// <p>Indicates whether an object stored in Amazon S3 has an active legal hold.</p>
618 pub fn get_object_lock_legal_hold_status(&self) -> &::std::option::Option<crate::types::ObjectLockLegalHoldStatus> {
619 self.inner.get_object_lock_legal_hold_status()
620 }
621 /// <p>The date and time when Object Lock is configured to expire.</p>
622 pub fn object_lock_retain_until_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
623 self.inner = self.inner.object_lock_retain_until_date(input);
624 self
625 }
626 /// <p>The date and time when Object Lock is configured to expire.</p>
627 pub fn set_object_lock_retain_until_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
628 self.inner = self.inner.set_object_lock_retain_until_date(input);
629 self
630 }
631 /// <p>The date and time when Object Lock is configured to expire.</p>
632 pub fn get_object_lock_retain_until_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
633 self.inner.get_object_lock_retain_until_date()
634 }
635 /// <p>The count of parts this object has.</p>
636 pub fn parts_count(mut self, input: i32) -> Self {
637 self.inner = self.inner.parts_count(input);
638 self
639 }
640 /// <p>The count of parts this object has.</p>
641 pub fn set_parts_count(mut self, input: ::std::option::Option<i32>) -> Self {
642 self.inner = self.inner.set_parts_count(input);
643 self
644 }
645 /// <p>The count of parts this object has.</p>
646 pub fn get_parts_count(&self) -> &::std::option::Option<i32> {
647 self.inner.get_parts_count()
648 }
649 /// <p>Indicates if request involves bucket that is either a source or destination in a Replication rule. For more information about S3 Replication, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication.html">Replication</a>.</p>
650 pub fn replication_status(mut self, input: crate::types::ReplicationStatus) -> Self {
651 self.inner = self.inner.replication_status(input);
652 self
653 }
654 /// <p>Indicates if request involves bucket that is either a source or destination in a Replication rule. For more information about S3 Replication, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication.html">Replication</a>.</p>
655 pub fn set_replication_status(mut self, input: ::std::option::Option<crate::types::ReplicationStatus>) -> Self {
656 self.inner = self.inner.set_replication_status(input);
657 self
658 }
659 /// <p>Indicates if request involves bucket that is either a source or destination in a Replication rule. For more information about S3 Replication, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication.html">Replication</a>.</p>
660 pub fn get_replication_status(&self) -> &::std::option::Option<crate::types::ReplicationStatus> {
661 self.inner.get_replication_status()
662 }
663 /// <p>If present, indicates that the requester was successfully charged for the request.</p><note>
664 /// <p>This functionality is not supported for directory buckets.</p>
665 /// </note>
666 pub fn request_charged(mut self, input: crate::types::RequestCharged) -> Self {
667 self.inner = self.inner.request_charged(input);
668 self
669 }
670 /// <p>If present, indicates that the requester was successfully charged for the request.</p><note>
671 /// <p>This functionality is not supported for directory buckets.</p>
672 /// </note>
673 pub fn set_request_charged(mut self, input: ::std::option::Option<crate::types::RequestCharged>) -> Self {
674 self.inner = self.inner.set_request_charged(input);
675 self
676 }
677 /// <p>If present, indicates that the requester was successfully charged for the request.</p><note>
678 /// <p>This functionality is not supported for directory buckets.</p>
679 /// </note>
680 pub fn get_request_charged(&self) -> &::std::option::Option<crate::types::RequestCharged> {
681 self.inner.get_request_charged()
682 }
683 /// <p>Provides information about object restoration operation and expiration time of the restored object copy.</p>
684 pub fn restore(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
685 self.inner = self.inner.restore(input.into());
686 self
687 }
688 /// <p>Provides information about object restoration operation and expiration time of the restored object copy.</p>
689 pub fn set_restore(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
690 self.inner = self.inner.set_restore(input);
691 self
692 }
693 /// <p>Provides information about object restoration operation and expiration time of the restored object copy.</p>
694 pub fn get_restore(&self) -> &::std::option::Option<::std::string::String> {
695 self.inner.get_restore()
696 }
697 /// <p>The server-side encryption algorithm used when storing requested object in Amazon S3 (for example, AES256, <code>aws:kms</code>).</p>
698 pub fn server_side_encryption(mut self, input: crate::types::ServerSideEncryption) -> Self {
699 self.inner = self.inner.server_side_encryption(input);
700 self
701 }
702 /// <p>The server-side encryption algorithm used when storing requested object in Amazon S3 (for example, AES256, <code>aws:kms</code>).</p>
703 pub fn set_server_side_encryption(mut self, input: ::std::option::Option<crate::types::ServerSideEncryption>) -> Self {
704 self.inner = self.inner.set_server_side_encryption(input);
705 self
706 }
707 /// <p>The server-side encryption algorithm used when storing requested object in Amazon S3 (for example, AES256, <code>aws:kms</code>).</p>
708 pub fn get_server_side_encryption(&self) -> &::std::option::Option<crate::types::ServerSideEncryption> {
709 self.inner.get_server_side_encryption()
710 }
711 /// <p>Encryption algorithm used if server-side encryption with a customer-provided encryption key was specified for object stored in Amazon S3.</p>
712 pub fn sse_customer_algorithm(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
713 self.inner = self.inner.sse_customer_algorithm(input.into());
714 self
715 }
716 /// <p>Encryption algorithm used if server-side encryption with a customer-provided encryption key was specified for object stored in Amazon S3.</p>
717 pub fn set_sse_customer_algorithm(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
718 self.inner = self.inner.set_sse_customer_algorithm(input);
719 self
720 }
721 /// <p>Encryption algorithm used if server-side encryption with a customer-provided encryption key was specified for object stored in Amazon S3.</p>
722 pub fn get_sse_customer_algorithm(&self) -> &::std::option::Option<::std::string::String> {
723 self.inner.get_sse_customer_algorithm()
724 }
725 /// <p>If present, specifies the ID (Key ID, Key ARN, or Key Alias) of the Amazon Web Services Key Management Service (Amazon Web Services KMS) symmetric encryption customer managed key that was used for stored in Amazon S3 object.</p>
726 pub fn ssekms_key_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
727 self.inner = self.inner.ssekms_key_id(input.into());
728 self
729 }
730 /// <p>If present, specifies the ID (Key ID, Key ARN, or Key Alias) of the Amazon Web Services Key Management Service (Amazon Web Services KMS) symmetric encryption customer managed key that was used for stored in Amazon S3 object.</p>
731 pub fn set_ssekms_key_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
732 self.inner = self.inner.set_ssekms_key_id(input);
733 self
734 }
735 /// <p>If present, specifies the ID (Key ID, Key ARN, or Key Alias) of the Amazon Web Services Key Management Service (Amazon Web Services KMS) symmetric encryption customer managed key that was used for stored in Amazon S3 object.</p>
736 pub fn get_ssekms_key_id(&self) -> &::std::option::Option<::std::string::String> {
737 self.inner.get_ssekms_key_id()
738 }
739 /// <p>128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to encrypt data stored in S3. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html">Protecting data using server-side encryption with customer-provided encryption keys (SSE-C)</a>.</p>
740 pub fn sse_customer_key_md5(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
741 self.inner = self.inner.sse_customer_key_md5(input.into());
742 self
743 }
744 /// <p>128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to encrypt data stored in S3. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html">Protecting data using server-side encryption with customer-provided encryption keys (SSE-C)</a>.</p>
745 pub fn set_sse_customer_key_md5(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
746 self.inner = self.inner.set_sse_customer_key_md5(input);
747 self
748 }
749 /// <p>128-bit MD5 digest of customer-provided encryption key used in Amazon S3 to encrypt data stored in S3. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html">Protecting data using server-side encryption with customer-provided encryption keys (SSE-C)</a>.</p>
750 pub fn get_sse_customer_key_md5(&self) -> &::std::option::Option<::std::string::String> {
751 self.inner.get_sse_customer_key_md5()
752 }
753 /// <p>Provides storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.</p>
754 /// <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage Classes</a>.</p>
755 pub fn storage_class(mut self, input: crate::types::StorageClass) -> Self {
756 self.inner = self.inner.storage_class(input);
757 self
758 }
759 /// <p>Provides storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.</p>
760 /// <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage Classes</a>.</p>
761 pub fn set_storage_class(mut self, input: ::std::option::Option<crate::types::StorageClass>) -> Self {
762 self.inner = self.inner.set_storage_class(input);
763 self
764 }
765 /// <p>Provides storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.</p>
766 /// <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html">Storage Classes</a>.</p>
767 pub fn get_storage_class(&self) -> &::std::option::Option<crate::types::StorageClass> {
768 self.inner.get_storage_class()
769 }
770 /// <p>The number of tags, if any, on the object.</p>
771 pub fn tag_count(mut self, input: i32) -> Self {
772 self.inner = self.inner.tag_count(input);
773 self
774 }
775 /// <p>The number of tags, if any, on the object.</p>
776 pub fn set_tag_count(mut self, input: ::std::option::Option<i32>) -> Self {
777 self.inner = self.inner.set_tag_count(input);
778 self
779 }
780 /// <p>The number of tags, if any, on the object.</p>
781 pub fn get_tag_count(&self) -> &::std::option::Option<i32> {
782 self.inner.get_tag_count()
783 }
784 /// <p>An ID used to reference a specific version of the object.</p>
785 pub fn version_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
786 self.inner = self.inner.version_id(input.into());
787 self
788 }
789 /// <p>An ID used to reference a specific version of the object.</p>
790 pub fn set_version_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
791 self.inner = self.inner.set_version_id(input);
792 self
793 }
794 /// <p>An ID used to reference a specific version of the object.</p>
795 pub fn get_version_id(&self) -> &::std::option::Option<::std::string::String> {
796 self.inner.get_version_id()
797 }
798 /// <p>Indicates whether the object stored in Amazon S3 uses an S3 bucket key for server-side encryption with Amazon Web Services KMS (SSE-KMS).</p>
799 pub fn bucket_key_enabled(mut self, input: bool) -> Self {
800 self.inner = self.inner.bucket_key_enabled(input);
801 self
802 }
803 /// <p>Indicates whether the object stored in Amazon S3 uses an S3 bucket key for server-side encryption with Amazon Web Services KMS (SSE-KMS).</p>
804 pub fn set_bucket_key_enabled(mut self, input: ::std::option::Option<bool>) -> Self {
805 self.inner = self.inner.set_bucket_key_enabled(input);
806 self
807 }
808 /// <p>Indicates whether the object stored in Amazon S3 uses an S3 bucket key for server-side encryption with Amazon Web Services KMS (SSE-KMS).</p>
809 pub fn get_bucket_key_enabled(&self) -> &::std::option::Option<bool> {
810 self.inner.get_bucket_key_enabled()
811 }
812}