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 _extended_request_id: Option<String>,
48 _request_id: Option<String>,
49}
50impl ListPartsOutput {
51 /// <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>
52 /// <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>
53 /// <p>This functionality is not supported for directory buckets.</p>
54 /// </note>
55 pub fn abort_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
56 self.abort_date.as_ref()
57 }
58 /// <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>
59 /// <p>This functionality is not supported for directory buckets.</p>
60 /// </note>
61 pub fn abort_rule_id(&self) -> ::std::option::Option<&str> {
62 self.abort_rule_id.as_deref()
63 }
64 /// <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>
65 pub fn bucket(&self) -> ::std::option::Option<&str> {
66 self.bucket.as_deref()
67 }
68 /// <p>Object key for which the multipart upload was initiated.</p>
69 pub fn key(&self) -> ::std::option::Option<&str> {
70 self.key.as_deref()
71 }
72 /// <p>Upload ID identifying the multipart upload whose parts are being listed.</p>
73 pub fn upload_id(&self) -> ::std::option::Option<&str> {
74 self.upload_id.as_deref()
75 }
76 /// <p>Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.</p>
77 pub fn part_number_marker(&self) -> ::std::option::Option<&str> {
78 self.part_number_marker.as_deref()
79 }
80 /// <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>
81 pub fn next_part_number_marker(&self) -> ::std::option::Option<&str> {
82 self.next_part_number_marker.as_deref()
83 }
84 /// <p>Maximum number of parts that were allowed in the response.</p>
85 pub fn max_parts(&self) -> ::std::option::Option<i32> {
86 self.max_parts
87 }
88 /// <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>
89 pub fn is_truncated(&self) -> ::std::option::Option<bool> {
90 self.is_truncated
91 }
92 /// <p>Container for elements related to a particular part. A response can contain zero or more <code>Part</code> elements.</p>
93 ///
94 /// 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()`.
95 pub fn parts(&self) -> &[crate::types::Part] {
96 self.parts.as_deref().unwrap_or_default()
97 }
98 /// <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>
99 pub fn initiator(&self) -> ::std::option::Option<&crate::types::Initiator> {
100 self.initiator.as_ref()
101 }
102 /// <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>
103 /// <p><b>Directory buckets</b> - The bucket owner is returned as the object owner for all the parts.</p>
104 /// </note>
105 pub fn owner(&self) -> ::std::option::Option<&crate::types::Owner> {
106 self.owner.as_ref()
107 }
108 /// <p>The class of storage used to store the uploaded object.</p><note>
109 /// <p><b>Directory buckets</b> - Only the S3 Express One Zone storage class is supported by directory buckets to store objects.</p>
110 /// </note>
111 pub fn storage_class(&self) -> ::std::option::Option<&crate::types::StorageClass> {
112 self.storage_class.as_ref()
113 }
114 /// <p>If present, indicates that the requester was successfully charged for the request.</p><note>
115 /// <p>This functionality is not supported for directory buckets.</p>
116 /// </note>
117 pub fn request_charged(&self) -> ::std::option::Option<&crate::types::RequestCharged> {
118 self.request_charged.as_ref()
119 }
120 /// <p>The algorithm that was used to create a checksum of the object.</p>
121 pub fn checksum_algorithm(&self) -> ::std::option::Option<&crate::types::ChecksumAlgorithm> {
122 self.checksum_algorithm.as_ref()
123 }
124}
125impl crate::s3_request_id::RequestIdExt for ListPartsOutput {
126 fn extended_request_id(&self) -> Option<&str> {
127 self._extended_request_id.as_deref()
128 }
129}
130impl ::aws_types::request_id::RequestId for ListPartsOutput {
131 fn request_id(&self) -> Option<&str> {
132 self._request_id.as_deref()
133 }
134}
135impl ListPartsOutput {
136 /// Creates a new builder-style object to manufacture [`ListPartsOutput`](crate::operation::list_parts::ListPartsOutput).
137 pub fn builder() -> crate::operation::list_parts::builders::ListPartsOutputBuilder {
138 crate::operation::list_parts::builders::ListPartsOutputBuilder::default()
139 }
140}
141
142/// A builder for [`ListPartsOutput`](crate::operation::list_parts::ListPartsOutput).
143#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
144#[non_exhaustive]
145pub struct ListPartsOutputBuilder {
146 pub(crate) abort_date: ::std::option::Option<::aws_smithy_types::DateTime>,
147 pub(crate) abort_rule_id: ::std::option::Option<::std::string::String>,
148 pub(crate) bucket: ::std::option::Option<::std::string::String>,
149 pub(crate) key: ::std::option::Option<::std::string::String>,
150 pub(crate) upload_id: ::std::option::Option<::std::string::String>,
151 pub(crate) part_number_marker: ::std::option::Option<::std::string::String>,
152 pub(crate) next_part_number_marker: ::std::option::Option<::std::string::String>,
153 pub(crate) max_parts: ::std::option::Option<i32>,
154 pub(crate) is_truncated: ::std::option::Option<bool>,
155 pub(crate) parts: ::std::option::Option<::std::vec::Vec<crate::types::Part>>,
156 pub(crate) initiator: ::std::option::Option<crate::types::Initiator>,
157 pub(crate) owner: ::std::option::Option<crate::types::Owner>,
158 pub(crate) storage_class: ::std::option::Option<crate::types::StorageClass>,
159 pub(crate) request_charged: ::std::option::Option<crate::types::RequestCharged>,
160 pub(crate) checksum_algorithm: ::std::option::Option<crate::types::ChecksumAlgorithm>,
161 _extended_request_id: Option<String>,
162 _request_id: Option<String>,
163}
164impl ListPartsOutputBuilder {
165 /// <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>
166 /// <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>
167 /// <p>This functionality is not supported for directory buckets.</p>
168 /// </note>
169 pub fn abort_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
170 self.abort_date = ::std::option::Option::Some(input);
171 self
172 }
173 /// <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>
174 /// <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>
175 /// <p>This functionality is not supported for directory buckets.</p>
176 /// </note>
177 pub fn set_abort_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
178 self.abort_date = input;
179 self
180 }
181 /// <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>
182 /// <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>
183 /// <p>This functionality is not supported for directory buckets.</p>
184 /// </note>
185 pub fn get_abort_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
186 &self.abort_date
187 }
188 /// <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>
189 /// <p>This functionality is not supported for directory buckets.</p>
190 /// </note>
191 pub fn abort_rule_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
192 self.abort_rule_id = ::std::option::Option::Some(input.into());
193 self
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 set_abort_rule_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
199 self.abort_rule_id = input;
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 get_abort_rule_id(&self) -> &::std::option::Option<::std::string::String> {
206 &self.abort_rule_id
207 }
208 /// <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>
209 pub fn bucket(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
210 self.bucket = ::std::option::Option::Some(input.into());
211 self
212 }
213 /// <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>
214 pub fn set_bucket(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
215 self.bucket = input;
216 self
217 }
218 /// <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>
219 pub fn get_bucket(&self) -> &::std::option::Option<::std::string::String> {
220 &self.bucket
221 }
222 /// <p>Object key for which the multipart upload was initiated.</p>
223 pub fn key(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
224 self.key = ::std::option::Option::Some(input.into());
225 self
226 }
227 /// <p>Object key for which the multipart upload was initiated.</p>
228 pub fn set_key(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
229 self.key = input;
230 self
231 }
232 /// <p>Object key for which the multipart upload was initiated.</p>
233 pub fn get_key(&self) -> &::std::option::Option<::std::string::String> {
234 &self.key
235 }
236 /// <p>Upload ID identifying the multipart upload whose parts are being listed.</p>
237 pub fn upload_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
238 self.upload_id = ::std::option::Option::Some(input.into());
239 self
240 }
241 /// <p>Upload ID identifying the multipart upload whose parts are being listed.</p>
242 pub fn set_upload_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
243 self.upload_id = input;
244 self
245 }
246 /// <p>Upload ID identifying the multipart upload whose parts are being listed.</p>
247 pub fn get_upload_id(&self) -> &::std::option::Option<::std::string::String> {
248 &self.upload_id
249 }
250 /// <p>Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.</p>
251 pub fn part_number_marker(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
252 self.part_number_marker = ::std::option::Option::Some(input.into());
253 self
254 }
255 /// <p>Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.</p>
256 pub fn set_part_number_marker(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
257 self.part_number_marker = input;
258 self
259 }
260 /// <p>Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.</p>
261 pub fn get_part_number_marker(&self) -> &::std::option::Option<::std::string::String> {
262 &self.part_number_marker
263 }
264 /// <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>
265 pub fn next_part_number_marker(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
266 self.next_part_number_marker = ::std::option::Option::Some(input.into());
267 self
268 }
269 /// <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>
270 pub fn set_next_part_number_marker(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
271 self.next_part_number_marker = input;
272 self
273 }
274 /// <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>
275 pub fn get_next_part_number_marker(&self) -> &::std::option::Option<::std::string::String> {
276 &self.next_part_number_marker
277 }
278 /// <p>Maximum number of parts that were allowed in the response.</p>
279 pub fn max_parts(mut self, input: i32) -> Self {
280 self.max_parts = ::std::option::Option::Some(input);
281 self
282 }
283 /// <p>Maximum number of parts that were allowed in the response.</p>
284 pub fn set_max_parts(mut self, input: ::std::option::Option<i32>) -> Self {
285 self.max_parts = input;
286 self
287 }
288 /// <p>Maximum number of parts that were allowed in the response.</p>
289 pub fn get_max_parts(&self) -> &::std::option::Option<i32> {
290 &self.max_parts
291 }
292 /// <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>
293 pub fn is_truncated(mut self, input: bool) -> Self {
294 self.is_truncated = ::std::option::Option::Some(input);
295 self
296 }
297 /// <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>
298 pub fn set_is_truncated(mut self, input: ::std::option::Option<bool>) -> Self {
299 self.is_truncated = input;
300 self
301 }
302 /// <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>
303 pub fn get_is_truncated(&self) -> &::std::option::Option<bool> {
304 &self.is_truncated
305 }
306 /// Appends an item to `parts`.
307 ///
308 /// To override the contents of this collection use [`set_parts`](Self::set_parts).
309 ///
310 /// <p>Container for elements related to a particular part. A response can contain zero or more <code>Part</code> elements.</p>
311 pub fn parts(mut self, input: crate::types::Part) -> Self {
312 let mut v = self.parts.unwrap_or_default();
313 v.push(input);
314 self.parts = ::std::option::Option::Some(v);
315 self
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 set_parts(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Part>>) -> Self {
319 self.parts = input;
320 self
321 }
322 /// <p>Container for elements related to a particular part. A response can contain zero or more <code>Part</code> elements.</p>
323 pub fn get_parts(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Part>> {
324 &self.parts
325 }
326 /// <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>
327 pub fn initiator(mut self, input: crate::types::Initiator) -> Self {
328 self.initiator = ::std::option::Option::Some(input);
329 self
330 }
331 /// <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>
332 pub fn set_initiator(mut self, input: ::std::option::Option<crate::types::Initiator>) -> Self {
333 self.initiator = input;
334 self
335 }
336 /// <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>
337 pub fn get_initiator(&self) -> &::std::option::Option<crate::types::Initiator> {
338 &self.initiator
339 }
340 /// <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>
341 /// <p><b>Directory buckets</b> - The bucket owner is returned as the object owner for all the parts.</p>
342 /// </note>
343 pub fn owner(mut self, input: crate::types::Owner) -> Self {
344 self.owner = ::std::option::Option::Some(input);
345 self
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 set_owner(mut self, input: ::std::option::Option<crate::types::Owner>) -> Self {
351 self.owner = 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 get_owner(&self) -> &::std::option::Option<crate::types::Owner> {
358 &self.owner
359 }
360 /// <p>The class of storage used to store the uploaded object.</p><note>
361 /// <p><b>Directory buckets</b> - Only the S3 Express One Zone storage class is supported by directory buckets to store objects.</p>
362 /// </note>
363 pub fn storage_class(mut self, input: crate::types::StorageClass) -> Self {
364 self.storage_class = ::std::option::Option::Some(input);
365 self
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 set_storage_class(mut self, input: ::std::option::Option<crate::types::StorageClass>) -> Self {
371 self.storage_class = 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 get_storage_class(&self) -> &::std::option::Option<crate::types::StorageClass> {
378 &self.storage_class
379 }
380 /// <p>If present, indicates that the requester was successfully charged for the request.</p><note>
381 /// <p>This functionality is not supported for directory buckets.</p>
382 /// </note>
383 pub fn request_charged(mut self, input: crate::types::RequestCharged) -> Self {
384 self.request_charged = ::std::option::Option::Some(input);
385 self
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 set_request_charged(mut self, input: ::std::option::Option<crate::types::RequestCharged>) -> Self {
391 self.request_charged = 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 get_request_charged(&self) -> &::std::option::Option<crate::types::RequestCharged> {
398 &self.request_charged
399 }
400 /// <p>The algorithm that was used to create a checksum of the object.</p>
401 pub fn checksum_algorithm(mut self, input: crate::types::ChecksumAlgorithm) -> Self {
402 self.checksum_algorithm = ::std::option::Option::Some(input);
403 self
404 }
405 /// <p>The algorithm that was used to create a checksum of the object.</p>
406 pub fn set_checksum_algorithm(mut self, input: ::std::option::Option<crate::types::ChecksumAlgorithm>) -> Self {
407 self.checksum_algorithm = input;
408 self
409 }
410 /// <p>The algorithm that was used to create a checksum of the object.</p>
411 pub fn get_checksum_algorithm(&self) -> &::std::option::Option<crate::types::ChecksumAlgorithm> {
412 &self.checksum_algorithm
413 }
414 pub(crate) fn _extended_request_id(mut self, extended_request_id: impl Into<String>) -> Self {
415 self._extended_request_id = Some(extended_request_id.into());
416 self
417 }
418
419 pub(crate) fn _set_extended_request_id(&mut self, extended_request_id: Option<String>) -> &mut Self {
420 self._extended_request_id = extended_request_id;
421 self
422 }
423 pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
424 self._request_id = Some(request_id.into());
425 self
426 }
427
428 pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
429 self._request_id = request_id;
430 self
431 }
432 /// Consumes the builder and constructs a [`ListPartsOutput`](crate::operation::list_parts::ListPartsOutput).
433 pub fn build(self) -> crate::operation::list_parts::ListPartsOutput {
434 crate::operation::list_parts::ListPartsOutput {
435 abort_date: self.abort_date,
436 abort_rule_id: self.abort_rule_id,
437 bucket: self.bucket,
438 key: self.key,
439 upload_id: self.upload_id,
440 part_number_marker: self.part_number_marker,
441 next_part_number_marker: self.next_part_number_marker,
442 max_parts: self.max_parts,
443 is_truncated: self.is_truncated,
444 parts: self.parts,
445 initiator: self.initiator,
446 owner: self.owner,
447 storage_class: self.storage_class,
448 request_charged: self.request_charged,
449 checksum_algorithm: self.checksum_algorithm,
450 _extended_request_id: self._extended_request_id,
451 _request_id: self._request_id,
452 }
453 }
454}