aws_sdk_memorydb/operation/describe_snapshots/
builders.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::describe_snapshots::_describe_snapshots_output::DescribeSnapshotsOutputBuilder;
3
4pub use crate::operation::describe_snapshots::_describe_snapshots_input::DescribeSnapshotsInputBuilder;
5
6impl crate::operation::describe_snapshots::builders::DescribeSnapshotsInputBuilder {
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::describe_snapshots::DescribeSnapshotsOutput,
13        ::aws_smithy_runtime_api::client::result::SdkError<
14            crate::operation::describe_snapshots::DescribeSnapshotsError,
15            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16        >,
17    > {
18        let mut fluent_builder = client.describe_snapshots();
19        fluent_builder.inner = self;
20        fluent_builder.send().await
21    }
22}
23/// Fluent builder constructing a request to `DescribeSnapshots`.
24///
25/// <p>Returns information about cluster snapshots. By default, DescribeSnapshots lists all of your snapshots; it can optionally describe a single snapshot, or just the snapshots associated with a particular cluster.</p>
26#[derive(::std::clone::Clone, ::std::fmt::Debug)]
27pub struct DescribeSnapshotsFluentBuilder {
28    handle: ::std::sync::Arc<crate::client::Handle>,
29    inner: crate::operation::describe_snapshots::builders::DescribeSnapshotsInputBuilder,
30    config_override: ::std::option::Option<crate::config::Builder>,
31}
32impl
33    crate::client::customize::internal::CustomizableSend<
34        crate::operation::describe_snapshots::DescribeSnapshotsOutput,
35        crate::operation::describe_snapshots::DescribeSnapshotsError,
36    > for DescribeSnapshotsFluentBuilder
37{
38    fn send(
39        self,
40        config_override: crate::config::Builder,
41    ) -> crate::client::customize::internal::BoxFuture<
42        crate::client::customize::internal::SendResult<
43            crate::operation::describe_snapshots::DescribeSnapshotsOutput,
44            crate::operation::describe_snapshots::DescribeSnapshotsError,
45        >,
46    > {
47        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
48    }
49}
50impl DescribeSnapshotsFluentBuilder {
51    /// Creates a new `DescribeSnapshotsFluentBuilder`.
52    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
53        Self {
54            handle,
55            inner: ::std::default::Default::default(),
56            config_override: ::std::option::Option::None,
57        }
58    }
59    /// Access the DescribeSnapshots as a reference.
60    pub fn as_input(&self) -> &crate::operation::describe_snapshots::builders::DescribeSnapshotsInputBuilder {
61        &self.inner
62    }
63    /// Sends the request and returns the response.
64    ///
65    /// If an error occurs, an `SdkError` will be returned with additional details that
66    /// can be matched against.
67    ///
68    /// By default, any retryable failures will be retried twice. Retry behavior
69    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
70    /// set when configuring the client.
71    pub async fn send(
72        self,
73    ) -> ::std::result::Result<
74        crate::operation::describe_snapshots::DescribeSnapshotsOutput,
75        ::aws_smithy_runtime_api::client::result::SdkError<
76            crate::operation::describe_snapshots::DescribeSnapshotsError,
77            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
78        >,
79    > {
80        let input = self
81            .inner
82            .build()
83            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
84        let runtime_plugins = crate::operation::describe_snapshots::DescribeSnapshots::operation_runtime_plugins(
85            self.handle.runtime_plugins.clone(),
86            &self.handle.conf,
87            self.config_override,
88        );
89        crate::operation::describe_snapshots::DescribeSnapshots::orchestrate(&runtime_plugins, input).await
90    }
91
92    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
93    pub fn customize(
94        self,
95    ) -> crate::client::customize::CustomizableOperation<
96        crate::operation::describe_snapshots::DescribeSnapshotsOutput,
97        crate::operation::describe_snapshots::DescribeSnapshotsError,
98        Self,
99    > {
100        crate::client::customize::CustomizableOperation::new(self)
101    }
102    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
103        self.set_config_override(::std::option::Option::Some(config_override.into()));
104        self
105    }
106
107    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
108        self.config_override = config_override;
109        self
110    }
111    /// Create a paginator for this request
112    ///
113    /// Paginators are used by calling [`send().await`](crate::operation::describe_snapshots::paginator::DescribeSnapshotsPaginator::send) which returns a [`PaginationStream`](aws_smithy_async::future::pagination_stream::PaginationStream).
114    pub fn into_paginator(self) -> crate::operation::describe_snapshots::paginator::DescribeSnapshotsPaginator {
115        crate::operation::describe_snapshots::paginator::DescribeSnapshotsPaginator::new(self.handle, self.inner)
116    }
117    /// <p>A user-supplied cluster identifier. If this parameter is specified, only snapshots associated with that specific cluster are described.</p>
118    pub fn cluster_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
119        self.inner = self.inner.cluster_name(input.into());
120        self
121    }
122    /// <p>A user-supplied cluster identifier. If this parameter is specified, only snapshots associated with that specific cluster are described.</p>
123    pub fn set_cluster_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
124        self.inner = self.inner.set_cluster_name(input);
125        self
126    }
127    /// <p>A user-supplied cluster identifier. If this parameter is specified, only snapshots associated with that specific cluster are described.</p>
128    pub fn get_cluster_name(&self) -> &::std::option::Option<::std::string::String> {
129        self.inner.get_cluster_name()
130    }
131    /// <p>A user-supplied name of the snapshot. If this parameter is specified, only this named snapshot is described.</p>
132    pub fn snapshot_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
133        self.inner = self.inner.snapshot_name(input.into());
134        self
135    }
136    /// <p>A user-supplied name of the snapshot. If this parameter is specified, only this named snapshot is described.</p>
137    pub fn set_snapshot_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
138        self.inner = self.inner.set_snapshot_name(input);
139        self
140    }
141    /// <p>A user-supplied name of the snapshot. If this parameter is specified, only this named snapshot is described.</p>
142    pub fn get_snapshot_name(&self) -> &::std::option::Option<::std::string::String> {
143        self.inner.get_snapshot_name()
144    }
145    /// <p>If set to system, the output shows snapshots that were automatically created by MemoryDB. If set to user the output shows snapshots that were manually created. If omitted, the output shows both automatically and manually created snapshots.</p>
146    pub fn source(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
147        self.inner = self.inner.source(input.into());
148        self
149    }
150    /// <p>If set to system, the output shows snapshots that were automatically created by MemoryDB. If set to user the output shows snapshots that were manually created. If omitted, the output shows both automatically and manually created snapshots.</p>
151    pub fn set_source(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
152        self.inner = self.inner.set_source(input);
153        self
154    }
155    /// <p>If set to system, the output shows snapshots that were automatically created by MemoryDB. If set to user the output shows snapshots that were manually created. If omitted, the output shows both automatically and manually created snapshots.</p>
156    pub fn get_source(&self) -> &::std::option::Option<::std::string::String> {
157        self.inner.get_source()
158    }
159    /// <p>An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.</p>
160    pub fn next_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
161        self.inner = self.inner.next_token(input.into());
162        self
163    }
164    /// <p>An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.</p>
165    pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
166        self.inner = self.inner.set_next_token(input);
167        self
168    }
169    /// <p>An optional argument to pass in case the total number of records exceeds the value of MaxResults. If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged.</p>
170    pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
171        self.inner.get_next_token()
172    }
173    /// <p>The maximum number of records to include in the response. If more records exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.</p>
174    pub fn max_results(mut self, input: i32) -> Self {
175        self.inner = self.inner.max_results(input);
176        self
177    }
178    /// <p>The maximum number of records to include in the response. If more records exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.</p>
179    pub fn set_max_results(mut self, input: ::std::option::Option<i32>) -> Self {
180        self.inner = self.inner.set_max_results(input);
181        self
182    }
183    /// <p>The maximum number of records to include in the response. If more records exist than the specified MaxResults value, a token is included in the response so that the remaining results can be retrieved.</p>
184    pub fn get_max_results(&self) -> &::std::option::Option<i32> {
185        self.inner.get_max_results()
186    }
187    /// <p>A Boolean value which if true, the shard configuration is included in the snapshot description.</p>
188    pub fn show_detail(mut self, input: bool) -> Self {
189        self.inner = self.inner.show_detail(input);
190        self
191    }
192    /// <p>A Boolean value which if true, the shard configuration is included in the snapshot description.</p>
193    pub fn set_show_detail(mut self, input: ::std::option::Option<bool>) -> Self {
194        self.inner = self.inner.set_show_detail(input);
195        self
196    }
197    /// <p>A Boolean value which if true, the shard configuration is included in the snapshot description.</p>
198    pub fn get_show_detail(&self) -> &::std::option::Option<bool> {
199        self.inner.get_show_detail()
200    }
201}