Struct aws_sdk_s3::input::list_objects_v2_input::Builder
source · pub struct Builder { /* private fields */ }
Expand description
A builder for ListObjectsV2Input
.
Implementations§
source§impl Builder
impl Builder
sourcepub fn bucket(self, input: impl Into<String>) -> Self
pub fn bucket(self, input: impl Into<String>) -> Self
Bucket name to list.
When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.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 Using access points in the Amazon S3 User Guide.
When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com
. When using this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.
sourcepub fn set_bucket(self, input: Option<String>) -> Self
pub fn set_bucket(self, input: Option<String>) -> Self
Bucket name to list.
When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.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 Using access points in the Amazon S3 User Guide.
When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com
. When using this action with S3 on Outposts through the Amazon Web Services SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using Amazon S3 on Outposts in the Amazon S3 User Guide.
sourcepub fn delimiter(self, input: impl Into<String>) -> Self
pub fn delimiter(self, input: impl Into<String>) -> Self
A delimiter is a character you use to group keys.
sourcepub fn set_delimiter(self, input: Option<String>) -> Self
pub fn set_delimiter(self, input: Option<String>) -> Self
A delimiter is a character you use to group keys.
sourcepub fn encoding_type(self, input: EncodingType) -> Self
pub fn encoding_type(self, input: EncodingType) -> Self
Encoding type used by Amazon S3 to encode object keys in the response.
sourcepub fn set_encoding_type(self, input: Option<EncodingType>) -> Self
pub fn set_encoding_type(self, input: Option<EncodingType>) -> Self
Encoding type used by Amazon S3 to encode object keys in the response.
sourcepub fn max_keys(self, input: i32) -> Self
pub fn max_keys(self, input: i32) -> Self
Sets the maximum number of keys returned in the response. By default the action returns up to 1,000 key names. The response might contain fewer keys but will never contain more.
sourcepub fn set_max_keys(self, input: Option<i32>) -> Self
pub fn set_max_keys(self, input: Option<i32>) -> Self
Sets the maximum number of keys returned in the response. By default the action returns up to 1,000 key names. The response might contain fewer keys but will never contain more.
sourcepub fn prefix(self, input: impl Into<String>) -> Self
pub fn prefix(self, input: impl Into<String>) -> Self
Limits the response to keys that begin with the specified prefix.
sourcepub fn set_prefix(self, input: Option<String>) -> Self
pub fn set_prefix(self, input: Option<String>) -> Self
Limits the response to keys that begin with the specified prefix.
sourcepub fn continuation_token(self, input: impl Into<String>) -> Self
pub fn continuation_token(self, input: impl Into<String>) -> Self
ContinuationToken indicates Amazon S3 that the list is being continued on this bucket with a token. ContinuationToken is obfuscated and is not a real key.
sourcepub fn set_continuation_token(self, input: Option<String>) -> Self
pub fn set_continuation_token(self, input: Option<String>) -> Self
ContinuationToken indicates Amazon S3 that the list is being continued on this bucket with a token. ContinuationToken is obfuscated and is not a real key.
sourcepub fn fetch_owner(self, input: bool) -> Self
pub fn fetch_owner(self, input: bool) -> Self
The owner field is not present in listV2 by default, if you want to return owner field with each key in the result then set the fetch owner field to true.
sourcepub fn set_fetch_owner(self, input: Option<bool>) -> Self
pub fn set_fetch_owner(self, input: Option<bool>) -> Self
The owner field is not present in listV2 by default, if you want to return owner field with each key in the result then set the fetch owner field to true.
sourcepub fn start_after(self, input: impl Into<String>) -> Self
pub fn start_after(self, input: impl Into<String>) -> Self
StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified key. StartAfter can be any key in the bucket.
sourcepub fn set_start_after(self, input: Option<String>) -> Self
pub fn set_start_after(self, input: Option<String>) -> Self
StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified key. StartAfter can be any key in the bucket.
sourcepub fn request_payer(self, input: RequestPayer) -> Self
pub fn request_payer(self, input: RequestPayer) -> Self
Confirms that the requester knows that she or he will be charged for the list objects request in V2 style. Bucket owners need not specify this parameter in their requests.
sourcepub fn set_request_payer(self, input: Option<RequestPayer>) -> Self
pub fn set_request_payer(self, input: Option<RequestPayer>) -> Self
Confirms that the requester knows that she or he will be charged for the list objects request in V2 style. Bucket owners need not specify this parameter in their requests.
sourcepub fn expected_bucket_owner(self, input: impl Into<String>) -> Self
pub fn expected_bucket_owner(self, input: impl Into<String>) -> Self
The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden
(access denied).
sourcepub fn set_expected_bucket_owner(self, input: Option<String>) -> Self
pub fn set_expected_bucket_owner(self, input: Option<String>) -> Self
The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden
(access denied).
sourcepub fn build(self) -> Result<ListObjectsV2Input, BuildError>
pub fn build(self) -> Result<ListObjectsV2Input, BuildError>
Consumes the builder and constructs a ListObjectsV2Input
.
Examples found in repository?
10159 10160 10161 10162 10163 10164 10165 10166 10167 10168 10169 10170 10171 10172 10173 10174 10175 10176 10177 10178 10179 10180 10181 10182 10183 10184 10185 10186 10187 10188 10189 10190 10191 10192 10193 10194 10195 10196 10197 10198 10199 10200 10201
pub async fn customize(
self,
) -> std::result::Result<
crate::operation::customize::CustomizableOperation<
crate::operation::ListObjectsV2,
aws_http::retry::AwsResponseRetryClassifier,
>,
aws_smithy_http::result::SdkError<crate::error::ListObjectsV2Error>,
> {
let handle = self.handle.clone();
let operation = self
.inner
.build()
.map_err(aws_smithy_http::result::SdkError::construction_failure)?
.make_operation(&handle.conf)
.await
.map_err(aws_smithy_http::result::SdkError::construction_failure)?;
Ok(crate::operation::customize::CustomizableOperation { handle, operation })
}
/// Sends the request and returns the response.
///
/// If an error occurs, an `SdkError` will be returned with additional details that
/// can be matched against.
///
/// By default, any retryable failures will be retried twice. Retry behavior
/// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
/// set when configuring the client.
pub async fn send(
self,
) -> std::result::Result<
crate::output::ListObjectsV2Output,
aws_smithy_http::result::SdkError<crate::error::ListObjectsV2Error>,
> {
let op = self
.inner
.build()
.map_err(aws_smithy_http::result::SdkError::construction_failure)?
.make_operation(&self.handle.conf)
.await
.map_err(aws_smithy_http::result::SdkError::construction_failure)?;
self.handle.client.call(op).await
}
More examples
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
pub fn send(
self,
) -> impl tokio_stream::Stream<
Item = std::result::Result<
crate::output::ListObjectsV2Output,
aws_smithy_http::result::SdkError<crate::error::ListObjectsV2Error>,
>,
> + Unpin {
// Move individual fields out of self for the borrow checker
let builder = self.builder;
let handle = self.handle;
aws_smithy_async::future::fn_stream::FnStream::new(move |tx| {
Box::pin(async move {
// Build the input for the first time. If required fields are missing, this is where we'll produce an early error.
let mut input = match builder
.build()
.map_err(aws_smithy_http::result::SdkError::construction_failure)
{
Ok(input) => input,
Err(e) => {
let _ = tx.send(Err(e)).await;
return;
}
};
loop {
let op = match input
.make_operation(&handle.conf)
.await
.map_err(aws_smithy_http::result::SdkError::construction_failure)
{
Ok(op) => op,
Err(e) => {
let _ = tx.send(Err(e)).await;
return;
}
};
let resp = handle.client.call(op).await;
// If the input member is None or it was an error
let done = match resp {
Ok(ref resp) => {
let new_token = crate::lens::reflens_structure_crate_output_list_objects_v2_output_next_continuation_token(resp);
let is_empty = new_token.map(|token| token.is_empty()).unwrap_or(true);
if !is_empty
&& new_token == input.continuation_token.as_ref()
&& self.stop_on_duplicate_token
{
true
} else {
input.continuation_token = new_token.cloned();
is_empty
}
}
Err(_) => true,
};
if tx.send(resp).await.is_err() {
// receiving end was dropped
return;
}
if done {
return;
}
}
})
})
}