pub struct Builder { /* private fields */ }
Expand description
A builder for ListStreamingDistributionsInput
.
Implementations§
source§impl Builder
impl Builder
sourcepub fn marker(self, input: impl Into<String>) -> Self
pub fn marker(self, input: impl Into<String>) -> Self
The value that you provided for the Marker
request parameter.
sourcepub fn set_marker(self, input: Option<String>) -> Self
pub fn set_marker(self, input: Option<String>) -> Self
The value that you provided for the Marker
request parameter.
sourcepub fn max_items(self, input: i32) -> Self
pub fn max_items(self, input: i32) -> Self
The value that you provided for the MaxItems
request parameter.
sourcepub fn set_max_items(self, input: Option<i32>) -> Self
pub fn set_max_items(self, input: Option<i32>) -> Self
The value that you provided for the MaxItems
request parameter.
sourcepub fn build(self) -> Result<ListStreamingDistributionsInput, BuildError>
pub fn build(self) -> Result<ListStreamingDistributionsInput, BuildError>
Consumes the builder and constructs a ListStreamingDistributionsInput
.
Examples found in repository?
src/client.rs (line 8030)
8018 8019 8020 8021 8022 8023 8024 8025 8026 8027 8028 8029 8030 8031 8032 8033 8034 8035 8036 8037 8038 8039 8040 8041 8042 8043 8044 8045 8046 8047 8048 8049 8050 8051 8052 8053 8054 8055 8056 8057 8058 8059 8060
pub async fn customize(
self,
) -> std::result::Result<
crate::operation::customize::CustomizableOperation<
crate::operation::ListStreamingDistributions,
aws_http::retry::AwsResponseRetryClassifier,
>,
aws_smithy_http::result::SdkError<crate::error::ListStreamingDistributionsError>,
> {
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::ListStreamingDistributionsOutput,
aws_smithy_http::result::SdkError<crate::error::ListStreamingDistributionsError>,
> {
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
src/paginator.rs (line 424)
409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473
pub fn send(
self,
) -> impl tokio_stream::Stream<
Item = std::result::Result<
crate::output::ListStreamingDistributionsOutput,
aws_smithy_http::result::SdkError<crate::error::ListStreamingDistributionsError>,
>,
> + 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_streaming_distributions_output_streaming_distribution_list_next_marker(resp);
let is_empty = new_token.map(|token| token.is_empty()).unwrap_or(true);
if !is_empty
&& new_token == input.marker.as_ref()
&& self.stop_on_duplicate_token
{
true
} else {
input.marker = new_token.cloned();
is_empty
}
}
Err(_) => true,
};
if tx.send(resp).await.is_err() {
// receiving end was dropped
return;
}
if done {
return;
}
}
})
})
}