aws_sdk_s3/operation/list_parts/_list_parts_output.rs
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)]
5pub struct ListPartsOutput {
6 /// <p>If the bucket has a lifecycle rule configured with an action to abort incomplete multipart uploads and the prefix in the lifecycle rule matches the object name in the request, then the response includes this header indicating when the initiated multipart upload will become eligible for abort operation. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config">Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration</a>.</p>
7 /// <p>The response will also include the <code>x-amz-abort-rule-id</code> header that will provide the ID of the lifecycle configuration rule that defines this action.</p><note>
8 /// <p>This functionality is not supported for directory buckets.</p>
9 /// </note>
10 pub abort_date: ::std::option::Option<::aws_smithy_types::DateTime>,
11 /// <p>This header is returned along with the <code>x-amz-abort-date</code> header. It identifies applicable lifecycle configuration rule that defines the action to abort incomplete multipart uploads.</p><note>
12 /// <p>This functionality is not supported for directory buckets.</p>
13 /// </note>
14 pub abort_rule_id: ::std::option::Option<::std::string::String>,
15 /// <p>The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or access point alias if used.</p>
16 pub bucket: ::std::option::Option<::std::string::String>,
17 /// <p>Object key for which the multipart upload was initiated.</p>
18 pub key: ::std::option::Option<::std::string::String>,
19 /// <p>Upload ID identifying the multipart upload whose parts are being listed.</p>
20 pub upload_id: ::std::option::Option<::std::string::String>,
21 /// <p>Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.</p>
22 pub part_number_marker: ::std::option::Option<::std::string::String>,
23 /// <p>When a list is truncated, this element specifies the last part in the list, as well as the value to use for the <code>part-number-marker</code> request parameter in a subsequent request.</p>
24 pub next_part_number_marker: ::std::option::Option<::std::string::String>,
25 /// <p>Maximum number of parts that were allowed in the response.</p>
26 pub max_parts: ::std::option::Option<i32>,
27 /// <p>Indicates whether the returned list of parts is truncated. A true value indicates that the list was truncated. A list can be truncated if the number of parts exceeds the limit returned in the MaxParts element.</p>
28 pub is_truncated: ::std::option::Option<bool>,
29 /// <p>Container for elements related to a particular part. A response can contain zero or more <code>Part</code> elements.</p>
30 pub parts: ::std::option::Option<::std::vec::Vec<crate::types::Part>>,
31 /// <p>Container element that identifies who initiated the multipart upload. If the initiator is an Amazon Web Services account, this element provides the same information as the <code>Owner</code> element. If the initiator is an IAM User, this element provides the user ARN and display name.</p>
32 pub initiator: ::std::option::Option<crate::types::Initiator>,
33 /// <p>Container element that identifies the object owner, after the object is created. If multipart upload is initiated by an IAM user, this element provides the parent account ID and display name.</p><note>
34 /// <p><b>Directory buckets</b> - The bucket owner is returned as the object owner for all the parts.</p>
35 /// </note>
36 pub owner: ::std::option::Option<crate::types::Owner>,
37 /// <p>The class of storage used to store the uploaded object.</p><note>
38 /// <p><b>Directory buckets</b> - Only the S3 Express One Zone storage class is supported by directory buckets to store objects.</p>
39 /// </note>
40 pub storage_class: ::std::option::Option<crate::types::StorageClass>,
41 /// <p>If present, indicates that the requester was successfully charged for the request.</p><note>
42 /// <p>This functionality is not supported for directory buckets.</p>
43 /// </note>
44 pub request_charged: ::std::option::Option<crate::types::RequestCharged>,
45 /// <p>The algorithm that was used to create a checksum of the object.</p>
46 pub checksum_algorithm: ::std::option::Option<crate::types::ChecksumAlgorithm>,
47 /// <p>The checksum type, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. You can use this header response to verify that the checksum type that is received is the same checksum type that was specified in <code>CreateMultipartUpload</code> request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity in the Amazon S3 User Guide</a>.</p>
48 pub checksum_type: ::std::option::Option<crate::types::ChecksumType>,
49 _extended_request_id: Option<String>,
50 _request_id: Option<String>,
51}
52impl ListPartsOutput {
53 /// <p>If the bucket has a lifecycle rule configured with an action to abort incomplete multipart uploads and the prefix in the lifecycle rule matches the object name in the request, then the response includes this header indicating when the initiated multipart upload will become eligible for abort operation. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config">Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration</a>.</p>
54 /// <p>The response will also include the <code>x-amz-abort-rule-id</code> header that will provide the ID of the lifecycle configuration rule that defines this action.</p><note>
55 /// <p>This functionality is not supported for directory buckets.</p>
56 /// </note>
57 pub fn abort_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
58 self.abort_date.as_ref()
59 }
60 /// <p>This header is returned along with the <code>x-amz-abort-date</code> header. It identifies applicable lifecycle configuration rule that defines the action to abort incomplete multipart uploads.</p><note>
61 /// <p>This functionality is not supported for directory buckets.</p>
62 /// </note>
63 pub fn abort_rule_id(&self) -> ::std::option::Option<&str> {
64 self.abort_rule_id.as_deref()
65 }
66 /// <p>The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or access point alias if used.</p>
67 pub fn bucket(&self) -> ::std::option::Option<&str> {
68 self.bucket.as_deref()
69 }
70 /// <p>Object key for which the multipart upload was initiated.</p>
71 pub fn key(&self) -> ::std::option::Option<&str> {
72 self.key.as_deref()
73 }
74 /// <p>Upload ID identifying the multipart upload whose parts are being listed.</p>
75 pub fn upload_id(&self) -> ::std::option::Option<&str> {
76 self.upload_id.as_deref()
77 }
78 /// <p>Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.</p>
79 pub fn part_number_marker(&self) -> ::std::option::Option<&str> {
80 self.part_number_marker.as_deref()
81 }
82 /// <p>When a list is truncated, this element specifies the last part in the list, as well as the value to use for the <code>part-number-marker</code> request parameter in a subsequent request.</p>
83 pub fn next_part_number_marker(&self) -> ::std::option::Option<&str> {
84 self.next_part_number_marker.as_deref()
85 }
86 /// <p>Maximum number of parts that were allowed in the response.</p>
87 pub fn max_parts(&self) -> ::std::option::Option<i32> {
88 self.max_parts
89 }
90 /// <p>Indicates whether the returned list of parts is truncated. A true value indicates that the list was truncated. A list can be truncated if the number of parts exceeds the limit returned in the MaxParts element.</p>
91 pub fn is_truncated(&self) -> ::std::option::Option<bool> {
92 self.is_truncated
93 }
94 /// <p>Container for elements related to a particular part. A response can contain zero or more <code>Part</code> elements.</p>
95 ///
96 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.parts.is_none()`.
97 pub fn parts(&self) -> &[crate::types::Part] {
98 self.parts.as_deref().unwrap_or_default()
99 }
100 /// <p>Container element that identifies who initiated the multipart upload. If the initiator is an Amazon Web Services account, this element provides the same information as the <code>Owner</code> element. If the initiator is an IAM User, this element provides the user ARN and display name.</p>
101 pub fn initiator(&self) -> ::std::option::Option<&crate::types::Initiator> {
102 self.initiator.as_ref()
103 }
104 /// <p>Container element that identifies the object owner, after the object is created. If multipart upload is initiated by an IAM user, this element provides the parent account ID and display name.</p><note>
105 /// <p><b>Directory buckets</b> - The bucket owner is returned as the object owner for all the parts.</p>
106 /// </note>
107 pub fn owner(&self) -> ::std::option::Option<&crate::types::Owner> {
108 self.owner.as_ref()
109 }
110 /// <p>The class of storage used to store the uploaded object.</p><note>
111 /// <p><b>Directory buckets</b> - Only the S3 Express One Zone storage class is supported by directory buckets to store objects.</p>
112 /// </note>
113 pub fn storage_class(&self) -> ::std::option::Option<&crate::types::StorageClass> {
114 self.storage_class.as_ref()
115 }
116 /// <p>If present, indicates that the requester was successfully charged for the request.</p><note>
117 /// <p>This functionality is not supported for directory buckets.</p>
118 /// </note>
119 pub fn request_charged(&self) -> ::std::option::Option<&crate::types::RequestCharged> {
120 self.request_charged.as_ref()
121 }
122 /// <p>The algorithm that was used to create a checksum of the object.</p>
123 pub fn checksum_algorithm(&self) -> ::std::option::Option<&crate::types::ChecksumAlgorithm> {
124 self.checksum_algorithm.as_ref()
125 }
126 /// <p>The checksum type, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. You can use this header response to verify that the checksum type that is received is the same checksum type that was specified in <code>CreateMultipartUpload</code> request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity in the Amazon S3 User Guide</a>.</p>
127 pub fn checksum_type(&self) -> ::std::option::Option<&crate::types::ChecksumType> {
128 self.checksum_type.as_ref()
129 }
130}
131impl crate::s3_request_id::RequestIdExt for ListPartsOutput {
132 fn extended_request_id(&self) -> Option<&str> {
133 self._extended_request_id.as_deref()
134 }
135}
136impl ::aws_types::request_id::RequestId for ListPartsOutput {
137 fn request_id(&self) -> Option<&str> {
138 self._request_id.as_deref()
139 }
140}
141impl ListPartsOutput {
142 /// Creates a new builder-style object to manufacture [`ListPartsOutput`](crate::operation::list_parts::ListPartsOutput).
143 pub fn builder() -> crate::operation::list_parts::builders::ListPartsOutputBuilder {
144 crate::operation::list_parts::builders::ListPartsOutputBuilder::default()
145 }
146}
147
148/// A builder for [`ListPartsOutput`](crate::operation::list_parts::ListPartsOutput).
149#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
150#[non_exhaustive]
151pub struct ListPartsOutputBuilder {
152 pub(crate) abort_date: ::std::option::Option<::aws_smithy_types::DateTime>,
153 pub(crate) abort_rule_id: ::std::option::Option<::std::string::String>,
154 pub(crate) bucket: ::std::option::Option<::std::string::String>,
155 pub(crate) key: ::std::option::Option<::std::string::String>,
156 pub(crate) upload_id: ::std::option::Option<::std::string::String>,
157 pub(crate) part_number_marker: ::std::option::Option<::std::string::String>,
158 pub(crate) next_part_number_marker: ::std::option::Option<::std::string::String>,
159 pub(crate) max_parts: ::std::option::Option<i32>,
160 pub(crate) is_truncated: ::std::option::Option<bool>,
161 pub(crate) parts: ::std::option::Option<::std::vec::Vec<crate::types::Part>>,
162 pub(crate) initiator: ::std::option::Option<crate::types::Initiator>,
163 pub(crate) owner: ::std::option::Option<crate::types::Owner>,
164 pub(crate) storage_class: ::std::option::Option<crate::types::StorageClass>,
165 pub(crate) request_charged: ::std::option::Option<crate::types::RequestCharged>,
166 pub(crate) checksum_algorithm: ::std::option::Option<crate::types::ChecksumAlgorithm>,
167 pub(crate) checksum_type: ::std::option::Option<crate::types::ChecksumType>,
168 _extended_request_id: Option<String>,
169 _request_id: Option<String>,
170}
171impl ListPartsOutputBuilder {
172 /// <p>If the bucket has a lifecycle rule configured with an action to abort incomplete multipart uploads and the prefix in the lifecycle rule matches the object name in the request, then the response includes this header indicating when the initiated multipart upload will become eligible for abort operation. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config">Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration</a>.</p>
173 /// <p>The response will also include the <code>x-amz-abort-rule-id</code> header that will provide the ID of the lifecycle configuration rule that defines this action.</p><note>
174 /// <p>This functionality is not supported for directory buckets.</p>
175 /// </note>
176 pub fn abort_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
177 self.abort_date = ::std::option::Option::Some(input);
178 self
179 }
180 /// <p>If the bucket has a lifecycle rule configured with an action to abort incomplete multipart uploads and the prefix in the lifecycle rule matches the object name in the request, then the response includes this header indicating when the initiated multipart upload will become eligible for abort operation. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config">Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration</a>.</p>
181 /// <p>The response will also include the <code>x-amz-abort-rule-id</code> header that will provide the ID of the lifecycle configuration rule that defines this action.</p><note>
182 /// <p>This functionality is not supported for directory buckets.</p>
183 /// </note>
184 pub fn set_abort_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
185 self.abort_date = input;
186 self
187 }
188 /// <p>If the bucket has a lifecycle rule configured with an action to abort incomplete multipart uploads and the prefix in the lifecycle rule matches the object name in the request, then the response includes this header indicating when the initiated multipart upload will become eligible for abort operation. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config">Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration</a>.</p>
189 /// <p>The response will also include the <code>x-amz-abort-rule-id</code> header that will provide the ID of the lifecycle configuration rule that defines this action.</p><note>
190 /// <p>This functionality is not supported for directory buckets.</p>
191 /// </note>
192 pub fn get_abort_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
193 &self.abort_date
194 }
195 /// <p>This header is returned along with the <code>x-amz-abort-date</code> header. It identifies applicable lifecycle configuration rule that defines the action to abort incomplete multipart uploads.</p><note>
196 /// <p>This functionality is not supported for directory buckets.</p>
197 /// </note>
198 pub fn abort_rule_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
199 self.abort_rule_id = ::std::option::Option::Some(input.into());
200 self
201 }
202 /// <p>This header is returned along with the <code>x-amz-abort-date</code> header. It identifies applicable lifecycle configuration rule that defines the action to abort incomplete multipart uploads.</p><note>
203 /// <p>This functionality is not supported for directory buckets.</p>
204 /// </note>
205 pub fn set_abort_rule_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
206 self.abort_rule_id = input;
207 self
208 }
209 /// <p>This header is returned along with the <code>x-amz-abort-date</code> header. It identifies applicable lifecycle configuration rule that defines the action to abort incomplete multipart uploads.</p><note>
210 /// <p>This functionality is not supported for directory buckets.</p>
211 /// </note>
212 pub fn get_abort_rule_id(&self) -> &::std::option::Option<::std::string::String> {
213 &self.abort_rule_id
214 }
215 /// <p>The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or access point alias if used.</p>
216 pub fn bucket(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
217 self.bucket = ::std::option::Option::Some(input.into());
218 self
219 }
220 /// <p>The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or access point alias if used.</p>
221 pub fn set_bucket(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
222 self.bucket = input;
223 self
224 }
225 /// <p>The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or access point alias if used.</p>
226 pub fn get_bucket(&self) -> &::std::option::Option<::std::string::String> {
227 &self.bucket
228 }
229 /// <p>Object key for which the multipart upload was initiated.</p>
230 pub fn key(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
231 self.key = ::std::option::Option::Some(input.into());
232 self
233 }
234 /// <p>Object key for which the multipart upload was initiated.</p>
235 pub fn set_key(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
236 self.key = input;
237 self
238 }
239 /// <p>Object key for which the multipart upload was initiated.</p>
240 pub fn get_key(&self) -> &::std::option::Option<::std::string::String> {
241 &self.key
242 }
243 /// <p>Upload ID identifying the multipart upload whose parts are being listed.</p>
244 pub fn upload_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
245 self.upload_id = ::std::option::Option::Some(input.into());
246 self
247 }
248 /// <p>Upload ID identifying the multipart upload whose parts are being listed.</p>
249 pub fn set_upload_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
250 self.upload_id = input;
251 self
252 }
253 /// <p>Upload ID identifying the multipart upload whose parts are being listed.</p>
254 pub fn get_upload_id(&self) -> &::std::option::Option<::std::string::String> {
255 &self.upload_id
256 }
257 /// <p>Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.</p>
258 pub fn part_number_marker(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
259 self.part_number_marker = ::std::option::Option::Some(input.into());
260 self
261 }
262 /// <p>Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.</p>
263 pub fn set_part_number_marker(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
264 self.part_number_marker = input;
265 self
266 }
267 /// <p>Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.</p>
268 pub fn get_part_number_marker(&self) -> &::std::option::Option<::std::string::String> {
269 &self.part_number_marker
270 }
271 /// <p>When a list is truncated, this element specifies the last part in the list, as well as the value to use for the <code>part-number-marker</code> request parameter in a subsequent request.</p>
272 pub fn next_part_number_marker(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
273 self.next_part_number_marker = ::std::option::Option::Some(input.into());
274 self
275 }
276 /// <p>When a list is truncated, this element specifies the last part in the list, as well as the value to use for the <code>part-number-marker</code> request parameter in a subsequent request.</p>
277 pub fn set_next_part_number_marker(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
278 self.next_part_number_marker = input;
279 self
280 }
281 /// <p>When a list is truncated, this element specifies the last part in the list, as well as the value to use for the <code>part-number-marker</code> request parameter in a subsequent request.</p>
282 pub fn get_next_part_number_marker(&self) -> &::std::option::Option<::std::string::String> {
283 &self.next_part_number_marker
284 }
285 /// <p>Maximum number of parts that were allowed in the response.</p>
286 pub fn max_parts(mut self, input: i32) -> Self {
287 self.max_parts = ::std::option::Option::Some(input);
288 self
289 }
290 /// <p>Maximum number of parts that were allowed in the response.</p>
291 pub fn set_max_parts(mut self, input: ::std::option::Option<i32>) -> Self {
292 self.max_parts = input;
293 self
294 }
295 /// <p>Maximum number of parts that were allowed in the response.</p>
296 pub fn get_max_parts(&self) -> &::std::option::Option<i32> {
297 &self.max_parts
298 }
299 /// <p>Indicates whether the returned list of parts is truncated. A true value indicates that the list was truncated. A list can be truncated if the number of parts exceeds the limit returned in the MaxParts element.</p>
300 pub fn is_truncated(mut self, input: bool) -> Self {
301 self.is_truncated = ::std::option::Option::Some(input);
302 self
303 }
304 /// <p>Indicates whether the returned list of parts is truncated. A true value indicates that the list was truncated. A list can be truncated if the number of parts exceeds the limit returned in the MaxParts element.</p>
305 pub fn set_is_truncated(mut self, input: ::std::option::Option<bool>) -> Self {
306 self.is_truncated = input;
307 self
308 }
309 /// <p>Indicates whether the returned list of parts is truncated. A true value indicates that the list was truncated. A list can be truncated if the number of parts exceeds the limit returned in the MaxParts element.</p>
310 pub fn get_is_truncated(&self) -> &::std::option::Option<bool> {
311 &self.is_truncated
312 }
313 /// Appends an item to `parts`.
314 ///
315 /// To override the contents of this collection use [`set_parts`](Self::set_parts).
316 ///
317 /// <p>Container for elements related to a particular part. A response can contain zero or more <code>Part</code> elements.</p>
318 pub fn parts(mut self, input: crate::types::Part) -> Self {
319 let mut v = self.parts.unwrap_or_default();
320 v.push(input);
321 self.parts = ::std::option::Option::Some(v);
322 self
323 }
324 /// <p>Container for elements related to a particular part. A response can contain zero or more <code>Part</code> elements.</p>
325 pub fn set_parts(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Part>>) -> Self {
326 self.parts = input;
327 self
328 }
329 /// <p>Container for elements related to a particular part. A response can contain zero or more <code>Part</code> elements.</p>
330 pub fn get_parts(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Part>> {
331 &self.parts
332 }
333 /// <p>Container element that identifies who initiated the multipart upload. If the initiator is an Amazon Web Services account, this element provides the same information as the <code>Owner</code> element. If the initiator is an IAM User, this element provides the user ARN and display name.</p>
334 pub fn initiator(mut self, input: crate::types::Initiator) -> Self {
335 self.initiator = ::std::option::Option::Some(input);
336 self
337 }
338 /// <p>Container element that identifies who initiated the multipart upload. If the initiator is an Amazon Web Services account, this element provides the same information as the <code>Owner</code> element. If the initiator is an IAM User, this element provides the user ARN and display name.</p>
339 pub fn set_initiator(mut self, input: ::std::option::Option<crate::types::Initiator>) -> Self {
340 self.initiator = input;
341 self
342 }
343 /// <p>Container element that identifies who initiated the multipart upload. If the initiator is an Amazon Web Services account, this element provides the same information as the <code>Owner</code> element. If the initiator is an IAM User, this element provides the user ARN and display name.</p>
344 pub fn get_initiator(&self) -> &::std::option::Option<crate::types::Initiator> {
345 &self.initiator
346 }
347 /// <p>Container element that identifies the object owner, after the object is created. If multipart upload is initiated by an IAM user, this element provides the parent account ID and display name.</p><note>
348 /// <p><b>Directory buckets</b> - The bucket owner is returned as the object owner for all the parts.</p>
349 /// </note>
350 pub fn owner(mut self, input: crate::types::Owner) -> Self {
351 self.owner = ::std::option::Option::Some(input);
352 self
353 }
354 /// <p>Container element that identifies the object owner, after the object is created. If multipart upload is initiated by an IAM user, this element provides the parent account ID and display name.</p><note>
355 /// <p><b>Directory buckets</b> - The bucket owner is returned as the object owner for all the parts.</p>
356 /// </note>
357 pub fn set_owner(mut self, input: ::std::option::Option<crate::types::Owner>) -> Self {
358 self.owner = input;
359 self
360 }
361 /// <p>Container element that identifies the object owner, after the object is created. If multipart upload is initiated by an IAM user, this element provides the parent account ID and display name.</p><note>
362 /// <p><b>Directory buckets</b> - The bucket owner is returned as the object owner for all the parts.</p>
363 /// </note>
364 pub fn get_owner(&self) -> &::std::option::Option<crate::types::Owner> {
365 &self.owner
366 }
367 /// <p>The class of storage used to store the uploaded object.</p><note>
368 /// <p><b>Directory buckets</b> - Only the S3 Express One Zone storage class is supported by directory buckets to store objects.</p>
369 /// </note>
370 pub fn storage_class(mut self, input: crate::types::StorageClass) -> Self {
371 self.storage_class = ::std::option::Option::Some(input);
372 self
373 }
374 /// <p>The class of storage used to store the uploaded object.</p><note>
375 /// <p><b>Directory buckets</b> - Only the S3 Express One Zone storage class is supported by directory buckets to store objects.</p>
376 /// </note>
377 pub fn set_storage_class(mut self, input: ::std::option::Option<crate::types::StorageClass>) -> Self {
378 self.storage_class = input;
379 self
380 }
381 /// <p>The class of storage used to store the uploaded object.</p><note>
382 /// <p><b>Directory buckets</b> - Only the S3 Express One Zone storage class is supported by directory buckets to store objects.</p>
383 /// </note>
384 pub fn get_storage_class(&self) -> &::std::option::Option<crate::types::StorageClass> {
385 &self.storage_class
386 }
387 /// <p>If present, indicates that the requester was successfully charged for the request.</p><note>
388 /// <p>This functionality is not supported for directory buckets.</p>
389 /// </note>
390 pub fn request_charged(mut self, input: crate::types::RequestCharged) -> Self {
391 self.request_charged = ::std::option::Option::Some(input);
392 self
393 }
394 /// <p>If present, indicates that the requester was successfully charged for the request.</p><note>
395 /// <p>This functionality is not supported for directory buckets.</p>
396 /// </note>
397 pub fn set_request_charged(mut self, input: ::std::option::Option<crate::types::RequestCharged>) -> Self {
398 self.request_charged = input;
399 self
400 }
401 /// <p>If present, indicates that the requester was successfully charged for the request.</p><note>
402 /// <p>This functionality is not supported for directory buckets.</p>
403 /// </note>
404 pub fn get_request_charged(&self) -> &::std::option::Option<crate::types::RequestCharged> {
405 &self.request_charged
406 }
407 /// <p>The algorithm that was used to create a checksum of the object.</p>
408 pub fn checksum_algorithm(mut self, input: crate::types::ChecksumAlgorithm) -> Self {
409 self.checksum_algorithm = ::std::option::Option::Some(input);
410 self
411 }
412 /// <p>The algorithm that was used to create a checksum of the object.</p>
413 pub fn set_checksum_algorithm(mut self, input: ::std::option::Option<crate::types::ChecksumAlgorithm>) -> Self {
414 self.checksum_algorithm = input;
415 self
416 }
417 /// <p>The algorithm that was used to create a checksum of the object.</p>
418 pub fn get_checksum_algorithm(&self) -> &::std::option::Option<crate::types::ChecksumAlgorithm> {
419 &self.checksum_algorithm
420 }
421 /// <p>The checksum type, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. You can use this header response to verify that the checksum type that is received is the same checksum type that was specified in <code>CreateMultipartUpload</code> request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity in the Amazon S3 User Guide</a>.</p>
422 pub fn checksum_type(mut self, input: crate::types::ChecksumType) -> Self {
423 self.checksum_type = ::std::option::Option::Some(input);
424 self
425 }
426 /// <p>The checksum type, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. You can use this header response to verify that the checksum type that is received is the same checksum type that was specified in <code>CreateMultipartUpload</code> request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity in the Amazon S3 User Guide</a>.</p>
427 pub fn set_checksum_type(mut self, input: ::std::option::Option<crate::types::ChecksumType>) -> Self {
428 self.checksum_type = input;
429 self
430 }
431 /// <p>The checksum type, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. You can use this header response to verify that the checksum type that is received is the same checksum type that was specified in <code>CreateMultipartUpload</code> request. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity in the Amazon S3 User Guide</a>.</p>
432 pub fn get_checksum_type(&self) -> &::std::option::Option<crate::types::ChecksumType> {
433 &self.checksum_type
434 }
435 pub(crate) fn _extended_request_id(mut self, extended_request_id: impl Into<String>) -> Self {
436 self._extended_request_id = Some(extended_request_id.into());
437 self
438 }
439
440 pub(crate) fn _set_extended_request_id(&mut self, extended_request_id: Option<String>) -> &mut Self {
441 self._extended_request_id = extended_request_id;
442 self
443 }
444 pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
445 self._request_id = Some(request_id.into());
446 self
447 }
448
449 pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
450 self._request_id = request_id;
451 self
452 }
453 /// Consumes the builder and constructs a [`ListPartsOutput`](crate::operation::list_parts::ListPartsOutput).
454 pub fn build(self) -> crate::operation::list_parts::ListPartsOutput {
455 crate::operation::list_parts::ListPartsOutput {
456 abort_date: self.abort_date,
457 abort_rule_id: self.abort_rule_id,
458 bucket: self.bucket,
459 key: self.key,
460 upload_id: self.upload_id,
461 part_number_marker: self.part_number_marker,
462 next_part_number_marker: self.next_part_number_marker,
463 max_parts: self.max_parts,
464 is_truncated: self.is_truncated,
465 parts: self.parts,
466 initiator: self.initiator,
467 owner: self.owner,
468 storage_class: self.storage_class,
469 request_charged: self.request_charged,
470 checksum_algorithm: self.checksum_algorithm,
471 checksum_type: self.checksum_type,
472 _extended_request_id: self._extended_request_id,
473 _request_id: self._request_id,
474 }
475 }
476}