aws_sdk_elasticache/operation/describe_events/
builders.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::describe_events::_describe_events_output::DescribeEventsOutputBuilder;
3
4pub use crate::operation::describe_events::_describe_events_input::DescribeEventsInputBuilder;
5
6impl crate::operation::describe_events::builders::DescribeEventsInputBuilder {
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_events::DescribeEventsOutput,
13        ::aws_smithy_runtime_api::client::result::SdkError<
14            crate::operation::describe_events::DescribeEventsError,
15            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16        >,
17    > {
18        let mut fluent_builder = client.describe_events();
19        fluent_builder.inner = self;
20        fluent_builder.send().await
21    }
22}
23/// Fluent builder constructing a request to `DescribeEvents`.
24///
25/// <p>Returns events related to clusters, cache security groups, and cache parameter groups. You can obtain events specific to a particular cluster, cache security group, or cache parameter group by providing the name as a parameter.</p>
26/// <p>By default, only the events occurring within the last hour are returned; however, you can retrieve up to 14 days' worth of events if necessary.</p>
27#[derive(::std::clone::Clone, ::std::fmt::Debug)]
28pub struct DescribeEventsFluentBuilder {
29    handle: ::std::sync::Arc<crate::client::Handle>,
30    inner: crate::operation::describe_events::builders::DescribeEventsInputBuilder,
31    config_override: ::std::option::Option<crate::config::Builder>,
32}
33impl
34    crate::client::customize::internal::CustomizableSend<
35        crate::operation::describe_events::DescribeEventsOutput,
36        crate::operation::describe_events::DescribeEventsError,
37    > for DescribeEventsFluentBuilder
38{
39    fn send(
40        self,
41        config_override: crate::config::Builder,
42    ) -> crate::client::customize::internal::BoxFuture<
43        crate::client::customize::internal::SendResult<
44            crate::operation::describe_events::DescribeEventsOutput,
45            crate::operation::describe_events::DescribeEventsError,
46        >,
47    > {
48        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
49    }
50}
51impl DescribeEventsFluentBuilder {
52    /// Creates a new `DescribeEventsFluentBuilder`.
53    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
54        Self {
55            handle,
56            inner: ::std::default::Default::default(),
57            config_override: ::std::option::Option::None,
58        }
59    }
60    /// Access the DescribeEvents as a reference.
61    pub fn as_input(&self) -> &crate::operation::describe_events::builders::DescribeEventsInputBuilder {
62        &self.inner
63    }
64    /// Sends the request and returns the response.
65    ///
66    /// If an error occurs, an `SdkError` will be returned with additional details that
67    /// can be matched against.
68    ///
69    /// By default, any retryable failures will be retried twice. Retry behavior
70    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
71    /// set when configuring the client.
72    pub async fn send(
73        self,
74    ) -> ::std::result::Result<
75        crate::operation::describe_events::DescribeEventsOutput,
76        ::aws_smithy_runtime_api::client::result::SdkError<
77            crate::operation::describe_events::DescribeEventsError,
78            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
79        >,
80    > {
81        let input = self
82            .inner
83            .build()
84            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
85        let runtime_plugins = crate::operation::describe_events::DescribeEvents::operation_runtime_plugins(
86            self.handle.runtime_plugins.clone(),
87            &self.handle.conf,
88            self.config_override,
89        );
90        crate::operation::describe_events::DescribeEvents::orchestrate(&runtime_plugins, input).await
91    }
92
93    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
94    pub fn customize(
95        self,
96    ) -> crate::client::customize::CustomizableOperation<
97        crate::operation::describe_events::DescribeEventsOutput,
98        crate::operation::describe_events::DescribeEventsError,
99        Self,
100    > {
101        crate::client::customize::CustomizableOperation::new(self)
102    }
103    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
104        self.set_config_override(::std::option::Option::Some(config_override.into()));
105        self
106    }
107
108    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
109        self.config_override = config_override;
110        self
111    }
112    /// Create a paginator for this request
113    ///
114    /// Paginators are used by calling [`send().await`](crate::operation::describe_events::paginator::DescribeEventsPaginator::send) which returns a [`PaginationStream`](aws_smithy_async::future::pagination_stream::PaginationStream).
115    pub fn into_paginator(self) -> crate::operation::describe_events::paginator::DescribeEventsPaginator {
116        crate::operation::describe_events::paginator::DescribeEventsPaginator::new(self.handle, self.inner)
117    }
118    /// <p>The identifier of the event source for which events are returned. If not specified, all sources are included in the response.</p>
119    pub fn source_identifier(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
120        self.inner = self.inner.source_identifier(input.into());
121        self
122    }
123    /// <p>The identifier of the event source for which events are returned. If not specified, all sources are included in the response.</p>
124    pub fn set_source_identifier(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
125        self.inner = self.inner.set_source_identifier(input);
126        self
127    }
128    /// <p>The identifier of the event source for which events are returned. If not specified, all sources are included in the response.</p>
129    pub fn get_source_identifier(&self) -> &::std::option::Option<::std::string::String> {
130        self.inner.get_source_identifier()
131    }
132    /// <p>The event source to retrieve events for. If no value is specified, all events are returned.</p>
133    pub fn source_type(mut self, input: crate::types::SourceType) -> Self {
134        self.inner = self.inner.source_type(input);
135        self
136    }
137    /// <p>The event source to retrieve events for. If no value is specified, all events are returned.</p>
138    pub fn set_source_type(mut self, input: ::std::option::Option<crate::types::SourceType>) -> Self {
139        self.inner = self.inner.set_source_type(input);
140        self
141    }
142    /// <p>The event source to retrieve events for. If no value is specified, all events are returned.</p>
143    pub fn get_source_type(&self) -> &::std::option::Option<crate::types::SourceType> {
144        self.inner.get_source_type()
145    }
146    /// <p>The beginning of the time interval to retrieve events for, specified in ISO 8601 format.</p>
147    /// <p><b>Example:</b> 2017-03-30T07:03:49.555Z</p>
148    pub fn start_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
149        self.inner = self.inner.start_time(input);
150        self
151    }
152    /// <p>The beginning of the time interval to retrieve events for, specified in ISO 8601 format.</p>
153    /// <p><b>Example:</b> 2017-03-30T07:03:49.555Z</p>
154    pub fn set_start_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
155        self.inner = self.inner.set_start_time(input);
156        self
157    }
158    /// <p>The beginning of the time interval to retrieve events for, specified in ISO 8601 format.</p>
159    /// <p><b>Example:</b> 2017-03-30T07:03:49.555Z</p>
160    pub fn get_start_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
161        self.inner.get_start_time()
162    }
163    /// <p>The end of the time interval for which to retrieve events, specified in ISO 8601 format.</p>
164    /// <p><b>Example:</b> 2017-03-30T07:03:49.555Z</p>
165    pub fn end_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
166        self.inner = self.inner.end_time(input);
167        self
168    }
169    /// <p>The end of the time interval for which to retrieve events, specified in ISO 8601 format.</p>
170    /// <p><b>Example:</b> 2017-03-30T07:03:49.555Z</p>
171    pub fn set_end_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
172        self.inner = self.inner.set_end_time(input);
173        self
174    }
175    /// <p>The end of the time interval for which to retrieve events, specified in ISO 8601 format.</p>
176    /// <p><b>Example:</b> 2017-03-30T07:03:49.555Z</p>
177    pub fn get_end_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
178        self.inner.get_end_time()
179    }
180    /// <p>The number of minutes worth of events to retrieve.</p>
181    pub fn duration(mut self, input: i32) -> Self {
182        self.inner = self.inner.duration(input);
183        self
184    }
185    /// <p>The number of minutes worth of events to retrieve.</p>
186    pub fn set_duration(mut self, input: ::std::option::Option<i32>) -> Self {
187        self.inner = self.inner.set_duration(input);
188        self
189    }
190    /// <p>The number of minutes worth of events to retrieve.</p>
191    pub fn get_duration(&self) -> &::std::option::Option<i32> {
192        self.inner.get_duration()
193    }
194    /// <p>The maximum number of records to include in the response. If more records exist than the specified <code>MaxRecords</code> value, a marker is included in the response so that the remaining results can be retrieved.</p>
195    /// <p>Default: 100</p>
196    /// <p>Constraints: minimum 20; maximum 100.</p>
197    pub fn max_records(mut self, input: i32) -> Self {
198        self.inner = self.inner.max_records(input);
199        self
200    }
201    /// <p>The maximum number of records to include in the response. If more records exist than the specified <code>MaxRecords</code> value, a marker is included in the response so that the remaining results can be retrieved.</p>
202    /// <p>Default: 100</p>
203    /// <p>Constraints: minimum 20; maximum 100.</p>
204    pub fn set_max_records(mut self, input: ::std::option::Option<i32>) -> Self {
205        self.inner = self.inner.set_max_records(input);
206        self
207    }
208    /// <p>The maximum number of records to include in the response. If more records exist than the specified <code>MaxRecords</code> value, a marker is included in the response so that the remaining results can be retrieved.</p>
209    /// <p>Default: 100</p>
210    /// <p>Constraints: minimum 20; maximum 100.</p>
211    pub fn get_max_records(&self) -> &::std::option::Option<i32> {
212        self.inner.get_max_records()
213    }
214    /// <p>An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by <code>MaxRecords</code>.</p>
215    pub fn marker(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
216        self.inner = self.inner.marker(input.into());
217        self
218    }
219    /// <p>An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by <code>MaxRecords</code>.</p>
220    pub fn set_marker(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
221        self.inner = self.inner.set_marker(input);
222        self
223    }
224    /// <p>An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by <code>MaxRecords</code>.</p>
225    pub fn get_marker(&self) -> &::std::option::Option<::std::string::String> {
226        self.inner.get_marker()
227    }
228}