aws_sdk_s3/operation/list_parts/_list_parts_input.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)]
5pub struct ListPartsInput {
6 /// <p>The name of the bucket to which the parts are being uploaded.</p>
7 /// <p><b>Directory buckets</b> - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format <code> <i>Bucket-name</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com</code>. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format <code> <i>bucket-base-name</i>--<i>zone-id</i>--x-s3</code> (for example, <code> <i>amzn-s3-demo-bucket</i>--<i>usw2-az1</i>--x-s3</code>). For information about bucket naming restrictions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html">Directory bucket naming rules</a> in the <i>Amazon S3 User Guide</i>.</p>
8 /// <p><b>Access points</b> - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p><note>
9 /// <p>Access points and Object Lambda access points are not supported by directory buckets.</p>
10 /// </note>
11 /// <p><b>S3 on Outposts</b> - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form <code> <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">What is S3 on Outposts?</a> in the <i>Amazon S3 User Guide</i>.</p>
12 pub bucket: ::std::option::Option<::std::string::String>,
13 /// <p>Object key for which the multipart upload was initiated.</p>
14 pub key: ::std::option::Option<::std::string::String>,
15 /// <p>Sets the maximum number of parts to return.</p>
16 pub max_parts: ::std::option::Option<i32>,
17 /// <p>Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.</p>
18 pub part_number_marker: ::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>Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays Buckets</a> in the <i>Amazon S3 User Guide</i>.</p><note>
22 /// <p>This functionality is not supported for directory buckets.</p>
23 /// </note>
24 pub request_payer: ::std::option::Option<crate::types::RequestPayer>,
25 /// <p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p>
26 pub expected_bucket_owner: ::std::option::Option<::std::string::String>,
27 /// <p>The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><note>
28 /// <p>This functionality is not supported for directory buckets.</p>
29 /// </note>
30 pub sse_customer_algorithm: ::std::option::Option<::std::string::String>,
31 /// <p>The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><note>
32 /// <p>This functionality is not supported for directory buckets.</p>
33 /// </note>
34 pub sse_customer_key: ::std::option::Option<::std::string::String>,
35 /// <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><note>
36 /// <p>This functionality is not supported for directory buckets.</p>
37 /// </note>
38 pub sse_customer_key_md5: ::std::option::Option<::std::string::String>,
39}
40impl ListPartsInput {
41 /// <p>The name of the bucket to which the parts are being uploaded.</p>
42 /// <p><b>Directory buckets</b> - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format <code> <i>Bucket-name</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com</code>. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format <code> <i>bucket-base-name</i>--<i>zone-id</i>--x-s3</code> (for example, <code> <i>amzn-s3-demo-bucket</i>--<i>usw2-az1</i>--x-s3</code>). For information about bucket naming restrictions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html">Directory bucket naming rules</a> in the <i>Amazon S3 User Guide</i>.</p>
43 /// <p><b>Access points</b> - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p><note>
44 /// <p>Access points and Object Lambda access points are not supported by directory buckets.</p>
45 /// </note>
46 /// <p><b>S3 on Outposts</b> - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form <code> <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">What is S3 on Outposts?</a> in the <i>Amazon S3 User Guide</i>.</p>
47 pub fn bucket(&self) -> ::std::option::Option<&str> {
48 self.bucket.as_deref()
49 }
50 /// <p>Object key for which the multipart upload was initiated.</p>
51 pub fn key(&self) -> ::std::option::Option<&str> {
52 self.key.as_deref()
53 }
54 /// <p>Sets the maximum number of parts to return.</p>
55 pub fn max_parts(&self) -> ::std::option::Option<i32> {
56 self.max_parts
57 }
58 /// <p>Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.</p>
59 pub fn part_number_marker(&self) -> ::std::option::Option<&str> {
60 self.part_number_marker.as_deref()
61 }
62 /// <p>Upload ID identifying the multipart upload whose parts are being listed.</p>
63 pub fn upload_id(&self) -> ::std::option::Option<&str> {
64 self.upload_id.as_deref()
65 }
66 /// <p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays Buckets</a> in the <i>Amazon S3 User Guide</i>.</p><note>
67 /// <p>This functionality is not supported for directory buckets.</p>
68 /// </note>
69 pub fn request_payer(&self) -> ::std::option::Option<&crate::types::RequestPayer> {
70 self.request_payer.as_ref()
71 }
72 /// <p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p>
73 pub fn expected_bucket_owner(&self) -> ::std::option::Option<&str> {
74 self.expected_bucket_owner.as_deref()
75 }
76 /// <p>The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><note>
77 /// <p>This functionality is not supported for directory buckets.</p>
78 /// </note>
79 pub fn sse_customer_algorithm(&self) -> ::std::option::Option<&str> {
80 self.sse_customer_algorithm.as_deref()
81 }
82 /// <p>The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><note>
83 /// <p>This functionality is not supported for directory buckets.</p>
84 /// </note>
85 pub fn sse_customer_key(&self) -> ::std::option::Option<&str> {
86 self.sse_customer_key.as_deref()
87 }
88 /// <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><note>
89 /// <p>This functionality is not supported for directory buckets.</p>
90 /// </note>
91 pub fn sse_customer_key_md5(&self) -> ::std::option::Option<&str> {
92 self.sse_customer_key_md5.as_deref()
93 }
94}
95impl ::std::fmt::Debug for ListPartsInput {
96 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
97 let mut formatter = f.debug_struct("ListPartsInput");
98 formatter.field("bucket", &self.bucket);
99 formatter.field("key", &self.key);
100 formatter.field("max_parts", &self.max_parts);
101 formatter.field("part_number_marker", &self.part_number_marker);
102 formatter.field("upload_id", &self.upload_id);
103 formatter.field("request_payer", &self.request_payer);
104 formatter.field("expected_bucket_owner", &self.expected_bucket_owner);
105 formatter.field("sse_customer_algorithm", &self.sse_customer_algorithm);
106 formatter.field("sse_customer_key", &"*** Sensitive Data Redacted ***");
107 formatter.field("sse_customer_key_md5", &self.sse_customer_key_md5);
108 formatter.finish()
109 }
110}
111impl ListPartsInput {
112 /// Creates a new builder-style object to manufacture [`ListPartsInput`](crate::operation::list_parts::ListPartsInput).
113 pub fn builder() -> crate::operation::list_parts::builders::ListPartsInputBuilder {
114 crate::operation::list_parts::builders::ListPartsInputBuilder::default()
115 }
116}
117
118/// A builder for [`ListPartsInput`](crate::operation::list_parts::ListPartsInput).
119#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
120#[non_exhaustive]
121pub struct ListPartsInputBuilder {
122 pub(crate) bucket: ::std::option::Option<::std::string::String>,
123 pub(crate) key: ::std::option::Option<::std::string::String>,
124 pub(crate) max_parts: ::std::option::Option<i32>,
125 pub(crate) part_number_marker: ::std::option::Option<::std::string::String>,
126 pub(crate) upload_id: ::std::option::Option<::std::string::String>,
127 pub(crate) request_payer: ::std::option::Option<crate::types::RequestPayer>,
128 pub(crate) expected_bucket_owner: ::std::option::Option<::std::string::String>,
129 pub(crate) sse_customer_algorithm: ::std::option::Option<::std::string::String>,
130 pub(crate) sse_customer_key: ::std::option::Option<::std::string::String>,
131 pub(crate) sse_customer_key_md5: ::std::option::Option<::std::string::String>,
132}
133impl ListPartsInputBuilder {
134 /// <p>The name of the bucket to which the parts are being uploaded.</p>
135 /// <p><b>Directory buckets</b> - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format <code> <i>Bucket-name</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com</code>. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format <code> <i>bucket-base-name</i>--<i>zone-id</i>--x-s3</code> (for example, <code> <i>amzn-s3-demo-bucket</i>--<i>usw2-az1</i>--x-s3</code>). For information about bucket naming restrictions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html">Directory bucket naming rules</a> in the <i>Amazon S3 User Guide</i>.</p>
136 /// <p><b>Access points</b> - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p><note>
137 /// <p>Access points and Object Lambda access points are not supported by directory buckets.</p>
138 /// </note>
139 /// <p><b>S3 on Outposts</b> - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form <code> <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">What is S3 on Outposts?</a> in the <i>Amazon S3 User Guide</i>.</p>
140 /// This field is required.
141 pub fn bucket(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
142 self.bucket = ::std::option::Option::Some(input.into());
143 self
144 }
145 /// <p>The name of the bucket to which the parts are being uploaded.</p>
146 /// <p><b>Directory buckets</b> - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format <code> <i>Bucket-name</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com</code>. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format <code> <i>bucket-base-name</i>--<i>zone-id</i>--x-s3</code> (for example, <code> <i>amzn-s3-demo-bucket</i>--<i>usw2-az1</i>--x-s3</code>). For information about bucket naming restrictions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html">Directory bucket naming rules</a> in the <i>Amazon S3 User Guide</i>.</p>
147 /// <p><b>Access points</b> - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p><note>
148 /// <p>Access points and Object Lambda access points are not supported by directory buckets.</p>
149 /// </note>
150 /// <p><b>S3 on Outposts</b> - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form <code> <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">What is S3 on Outposts?</a> in the <i>Amazon S3 User Guide</i>.</p>
151 pub fn set_bucket(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
152 self.bucket = input;
153 self
154 }
155 /// <p>The name of the bucket to which the parts are being uploaded.</p>
156 /// <p><b>Directory buckets</b> - When you use this operation with a directory bucket, you must use virtual-hosted-style requests in the format <code> <i>Bucket-name</i>.s3express-<i>zone-id</i>.<i>region-code</i>.amazonaws.com</code>. Path-style requests are not supported. Directory bucket names must be unique in the chosen Zone (Availability Zone or Local Zone). Bucket names must follow the format <code> <i>bucket-base-name</i>--<i>zone-id</i>--x-s3</code> (for example, <code> <i>amzn-s3-demo-bucket</i>--<i>usw2-az1</i>--x-s3</code>). For information about bucket naming restrictions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html">Directory bucket naming rules</a> in the <i>Amazon S3 User Guide</i>.</p>
157 /// <p><b>Access points</b> - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p><note>
158 /// <p>Access points and Object Lambda access points are not supported by directory buckets.</p>
159 /// </note>
160 /// <p><b>S3 on Outposts</b> - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form <code> <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">What is S3 on Outposts?</a> in the <i>Amazon S3 User Guide</i>.</p>
161 pub fn get_bucket(&self) -> &::std::option::Option<::std::string::String> {
162 &self.bucket
163 }
164 /// <p>Object key for which the multipart upload was initiated.</p>
165 /// This field is required.
166 pub fn key(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
167 self.key = ::std::option::Option::Some(input.into());
168 self
169 }
170 /// <p>Object key for which the multipart upload was initiated.</p>
171 pub fn set_key(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
172 self.key = input;
173 self
174 }
175 /// <p>Object key for which the multipart upload was initiated.</p>
176 pub fn get_key(&self) -> &::std::option::Option<::std::string::String> {
177 &self.key
178 }
179 /// <p>Sets the maximum number of parts to return.</p>
180 pub fn max_parts(mut self, input: i32) -> Self {
181 self.max_parts = ::std::option::Option::Some(input);
182 self
183 }
184 /// <p>Sets the maximum number of parts to return.</p>
185 pub fn set_max_parts(mut self, input: ::std::option::Option<i32>) -> Self {
186 self.max_parts = input;
187 self
188 }
189 /// <p>Sets the maximum number of parts to return.</p>
190 pub fn get_max_parts(&self) -> &::std::option::Option<i32> {
191 &self.max_parts
192 }
193 /// <p>Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.</p>
194 pub fn part_number_marker(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
195 self.part_number_marker = ::std::option::Option::Some(input.into());
196 self
197 }
198 /// <p>Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.</p>
199 pub fn set_part_number_marker(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
200 self.part_number_marker = input;
201 self
202 }
203 /// <p>Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.</p>
204 pub fn get_part_number_marker(&self) -> &::std::option::Option<::std::string::String> {
205 &self.part_number_marker
206 }
207 /// <p>Upload ID identifying the multipart upload whose parts are being listed.</p>
208 /// This field is required.
209 pub fn upload_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
210 self.upload_id = ::std::option::Option::Some(input.into());
211 self
212 }
213 /// <p>Upload ID identifying the multipart upload whose parts are being listed.</p>
214 pub fn set_upload_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
215 self.upload_id = input;
216 self
217 }
218 /// <p>Upload ID identifying the multipart upload whose parts are being listed.</p>
219 pub fn get_upload_id(&self) -> &::std::option::Option<::std::string::String> {
220 &self.upload_id
221 }
222 /// <p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays Buckets</a> in the <i>Amazon S3 User Guide</i>.</p><note>
223 /// <p>This functionality is not supported for directory buckets.</p>
224 /// </note>
225 pub fn request_payer(mut self, input: crate::types::RequestPayer) -> Self {
226 self.request_payer = ::std::option::Option::Some(input);
227 self
228 }
229 /// <p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays Buckets</a> in the <i>Amazon S3 User Guide</i>.</p><note>
230 /// <p>This functionality is not supported for directory buckets.</p>
231 /// </note>
232 pub fn set_request_payer(mut self, input: ::std::option::Option<crate::types::RequestPayer>) -> Self {
233 self.request_payer = input;
234 self
235 }
236 /// <p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not specify this parameter in their requests. If either the source or destination S3 bucket has Requester Pays enabled, the requester will pay for corresponding charges to copy the object. For information about downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays Buckets</a> in the <i>Amazon S3 User Guide</i>.</p><note>
237 /// <p>This functionality is not supported for directory buckets.</p>
238 /// </note>
239 pub fn get_request_payer(&self) -> &::std::option::Option<crate::types::RequestPayer> {
240 &self.request_payer
241 }
242 /// <p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p>
243 pub fn expected_bucket_owner(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
244 self.expected_bucket_owner = ::std::option::Option::Some(input.into());
245 self
246 }
247 /// <p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p>
248 pub fn set_expected_bucket_owner(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
249 self.expected_bucket_owner = input;
250 self
251 }
252 /// <p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p>
253 pub fn get_expected_bucket_owner(&self) -> &::std::option::Option<::std::string::String> {
254 &self.expected_bucket_owner
255 }
256 /// <p>The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><note>
257 /// <p>This functionality is not supported for directory buckets.</p>
258 /// </note>
259 pub fn sse_customer_algorithm(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
260 self.sse_customer_algorithm = ::std::option::Option::Some(input.into());
261 self
262 }
263 /// <p>The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><note>
264 /// <p>This functionality is not supported for directory buckets.</p>
265 /// </note>
266 pub fn set_sse_customer_algorithm(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
267 self.sse_customer_algorithm = input;
268 self
269 }
270 /// <p>The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><note>
271 /// <p>This functionality is not supported for directory buckets.</p>
272 /// </note>
273 pub fn get_sse_customer_algorithm(&self) -> &::std::option::Option<::std::string::String> {
274 &self.sse_customer_algorithm
275 }
276 /// <p>The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><note>
277 /// <p>This functionality is not supported for directory buckets.</p>
278 /// </note>
279 pub fn sse_customer_key(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
280 self.sse_customer_key = ::std::option::Option::Some(input.into());
281 self
282 }
283 /// <p>The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><note>
284 /// <p>This functionality is not supported for directory buckets.</p>
285 /// </note>
286 pub fn set_sse_customer_key(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
287 self.sse_customer_key = input;
288 self
289 }
290 /// <p>The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><note>
291 /// <p>This functionality is not supported for directory buckets.</p>
292 /// </note>
293 pub fn get_sse_customer_key(&self) -> &::std::option::Option<::std::string::String> {
294 &self.sse_customer_key
295 }
296 /// <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><note>
297 /// <p>This functionality is not supported for directory buckets.</p>
298 /// </note>
299 pub fn sse_customer_key_md5(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
300 self.sse_customer_key_md5 = ::std::option::Option::Some(input.into());
301 self
302 }
303 /// <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><note>
304 /// <p>This functionality is not supported for directory buckets.</p>
305 /// </note>
306 pub fn set_sse_customer_key_md5(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
307 self.sse_customer_key_md5 = input;
308 self
309 }
310 /// <p>The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html">Protecting data using SSE-C keys</a> in the <i>Amazon S3 User Guide</i>.</p><note>
311 /// <p>This functionality is not supported for directory buckets.</p>
312 /// </note>
313 pub fn get_sse_customer_key_md5(&self) -> &::std::option::Option<::std::string::String> {
314 &self.sse_customer_key_md5
315 }
316 /// Consumes the builder and constructs a [`ListPartsInput`](crate::operation::list_parts::ListPartsInput).
317 pub fn build(self) -> ::std::result::Result<crate::operation::list_parts::ListPartsInput, ::aws_smithy_types::error::operation::BuildError> {
318 ::std::result::Result::Ok(crate::operation::list_parts::ListPartsInput {
319 bucket: self.bucket,
320 key: self.key,
321 max_parts: self.max_parts,
322 part_number_marker: self.part_number_marker,
323 upload_id: self.upload_id,
324 request_payer: self.request_payer,
325 expected_bucket_owner: self.expected_bucket_owner,
326 sse_customer_algorithm: self.sse_customer_algorithm,
327 sse_customer_key: self.sse_customer_key,
328 sse_customer_key_md5: self.sse_customer_key_md5,
329 })
330 }
331}
332impl ::std::fmt::Debug for ListPartsInputBuilder {
333 fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
334 let mut formatter = f.debug_struct("ListPartsInputBuilder");
335 formatter.field("bucket", &self.bucket);
336 formatter.field("key", &self.key);
337 formatter.field("max_parts", &self.max_parts);
338 formatter.field("part_number_marker", &self.part_number_marker);
339 formatter.field("upload_id", &self.upload_id);
340 formatter.field("request_payer", &self.request_payer);
341 formatter.field("expected_bucket_owner", &self.expected_bucket_owner);
342 formatter.field("sse_customer_algorithm", &self.sse_customer_algorithm);
343 formatter.field("sse_customer_key", &"*** Sensitive Data Redacted ***");
344 formatter.field("sse_customer_key_md5", &self.sse_customer_key_md5);
345 formatter.finish()
346 }
347}