aws_sdk_keyspacesstreams/operation/get_stream/
builders.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::get_stream::_get_stream_output::GetStreamOutputBuilder;
3
4pub use crate::operation::get_stream::_get_stream_input::GetStreamInputBuilder;
5
6impl crate::operation::get_stream::builders::GetStreamInputBuilder {
7    /// Sends a request with this input using the given client.
8    pub async fn send_with(
9        self,
10        client: &crate::Client,
11    ) -> ::std::result::Result<
12        crate::operation::get_stream::GetStreamOutput,
13        ::aws_smithy_runtime_api::client::result::SdkError<
14            crate::operation::get_stream::GetStreamError,
15            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16        >,
17    > {
18        let mut fluent_builder = client.get_stream();
19        fluent_builder.inner = self;
20        fluent_builder.send().await
21    }
22}
23/// Fluent builder constructing a request to `GetStream`.
24///
25/// <p>Returns detailed information about a specific data capture stream for an Amazon Keyspaces table. The information includes the stream's Amazon Resource Name (ARN), creation time, current status, retention period, shard composition, and associated table details. This operation helps you monitor and manage the configuration of your Amazon Keyspaces data streams.</p>
26#[derive(::std::clone::Clone, ::std::fmt::Debug)]
27pub struct GetStreamFluentBuilder {
28    handle: ::std::sync::Arc<crate::client::Handle>,
29    inner: crate::operation::get_stream::builders::GetStreamInputBuilder,
30    config_override: ::std::option::Option<crate::config::Builder>,
31}
32impl crate::client::customize::internal::CustomizableSend<crate::operation::get_stream::GetStreamOutput, crate::operation::get_stream::GetStreamError>
33    for GetStreamFluentBuilder
34{
35    fn send(
36        self,
37        config_override: crate::config::Builder,
38    ) -> crate::client::customize::internal::BoxFuture<
39        crate::client::customize::internal::SendResult<crate::operation::get_stream::GetStreamOutput, crate::operation::get_stream::GetStreamError>,
40    > {
41        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
42    }
43}
44impl GetStreamFluentBuilder {
45    /// Creates a new `GetStreamFluentBuilder`.
46    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
47        Self {
48            handle,
49            inner: ::std::default::Default::default(),
50            config_override: ::std::option::Option::None,
51        }
52    }
53    /// Access the GetStream as a reference.
54    pub fn as_input(&self) -> &crate::operation::get_stream::builders::GetStreamInputBuilder {
55        &self.inner
56    }
57    /// Sends the request and returns the response.
58    ///
59    /// If an error occurs, an `SdkError` will be returned with additional details that
60    /// can be matched against.
61    ///
62    /// By default, any retryable failures will be retried twice. Retry behavior
63    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
64    /// set when configuring the client.
65    pub async fn send(
66        self,
67    ) -> ::std::result::Result<
68        crate::operation::get_stream::GetStreamOutput,
69        ::aws_smithy_runtime_api::client::result::SdkError<
70            crate::operation::get_stream::GetStreamError,
71            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
72        >,
73    > {
74        let input = self
75            .inner
76            .build()
77            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
78        let runtime_plugins = crate::operation::get_stream::GetStream::operation_runtime_plugins(
79            self.handle.runtime_plugins.clone(),
80            &self.handle.conf,
81            self.config_override,
82        );
83        crate::operation::get_stream::GetStream::orchestrate(&runtime_plugins, input).await
84    }
85
86    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
87    pub fn customize(
88        self,
89    ) -> crate::client::customize::CustomizableOperation<
90        crate::operation::get_stream::GetStreamOutput,
91        crate::operation::get_stream::GetStreamError,
92        Self,
93    > {
94        crate::client::customize::CustomizableOperation::new(self)
95    }
96    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
97        self.set_config_override(::std::option::Option::Some(config_override.into()));
98        self
99    }
100
101    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
102        self.config_override = config_override;
103        self
104    }
105    /// Create a paginator for this request
106    ///
107    /// Paginators are used by calling [`send().await`](crate::operation::get_stream::paginator::GetStreamPaginator::send) which returns a [`PaginationStream`](aws_smithy_async::future::pagination_stream::PaginationStream).
108    pub fn into_paginator(self) -> crate::operation::get_stream::paginator::GetStreamPaginator {
109        crate::operation::get_stream::paginator::GetStreamPaginator::new(self.handle, self.inner)
110    }
111    /// <p>The Amazon Resource Name (ARN) of the stream for which detailed information is requested. This uniquely identifies the specific stream you want to get information about.</p>
112    pub fn stream_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
113        self.inner = self.inner.stream_arn(input.into());
114        self
115    }
116    /// <p>The Amazon Resource Name (ARN) of the stream for which detailed information is requested. This uniquely identifies the specific stream you want to get information about.</p>
117    pub fn set_stream_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
118        self.inner = self.inner.set_stream_arn(input);
119        self
120    }
121    /// <p>The Amazon Resource Name (ARN) of the stream for which detailed information is requested. This uniquely identifies the specific stream you want to get information about.</p>
122    pub fn get_stream_arn(&self) -> &::std::option::Option<::std::string::String> {
123        self.inner.get_stream_arn()
124    }
125    /// <p>The maximum number of shard objects to return in a single <code>GetStream</code> request. Default value is 100. The minimum value is 1 and the maximum value is 100.</p>
126    pub fn max_results(mut self, input: i32) -> Self {
127        self.inner = self.inner.max_results(input);
128        self
129    }
130    /// <p>The maximum number of shard objects to return in a single <code>GetStream</code> request. Default value is 100. The minimum value is 1 and the maximum value is 100.</p>
131    pub fn set_max_results(mut self, input: ::std::option::Option<i32>) -> Self {
132        self.inner = self.inner.set_max_results(input);
133        self
134    }
135    /// <p>The maximum number of shard objects to return in a single <code>GetStream</code> request. Default value is 100. The minimum value is 1 and the maximum value is 100.</p>
136    pub fn get_max_results(&self) -> &::std::option::Option<i32> {
137        self.inner.get_max_results()
138    }
139    /// <p>Optional filter criteria to apply when retrieving shards. You can filter shards based on their state or other attributes to narrow down the results returned by the <code>GetStream</code> operation.</p>
140    pub fn shard_filter(mut self, input: crate::types::ShardFilter) -> Self {
141        self.inner = self.inner.shard_filter(input);
142        self
143    }
144    /// <p>Optional filter criteria to apply when retrieving shards. You can filter shards based on their state or other attributes to narrow down the results returned by the <code>GetStream</code> operation.</p>
145    pub fn set_shard_filter(mut self, input: ::std::option::Option<crate::types::ShardFilter>) -> Self {
146        self.inner = self.inner.set_shard_filter(input);
147        self
148    }
149    /// <p>Optional filter criteria to apply when retrieving shards. You can filter shards based on their state or other attributes to narrow down the results returned by the <code>GetStream</code> operation.</p>
150    pub fn get_shard_filter(&self) -> &::std::option::Option<crate::types::ShardFilter> {
151        self.inner.get_shard_filter()
152    }
153    /// <p>An optional pagination token provided by a previous <code>GetStream</code> operation. If this parameter is specified, the response includes only records beyond the token, up to the value specified by <code>maxResults</code>.</p>
154    pub fn next_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
155        self.inner = self.inner.next_token(input.into());
156        self
157    }
158    /// <p>An optional pagination token provided by a previous <code>GetStream</code> operation. If this parameter is specified, the response includes only records beyond the token, up to the value specified by <code>maxResults</code>.</p>
159    pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
160        self.inner = self.inner.set_next_token(input);
161        self
162    }
163    /// <p>An optional pagination token provided by a previous <code>GetStream</code> operation. If this parameter is specified, the response includes only records beyond the token, up to the value specified by <code>maxResults</code>.</p>
164    pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
165        self.inner.get_next_token()
166    }
167}