aws_sdk_notifications/operation/list_notification_events/
builders.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::list_notification_events::_list_notification_events_output::ListNotificationEventsOutputBuilder;
3
4pub use crate::operation::list_notification_events::_list_notification_events_input::ListNotificationEventsInputBuilder;
5
6impl crate::operation::list_notification_events::builders::ListNotificationEventsInputBuilder {
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::list_notification_events::ListNotificationEventsOutput,
13        ::aws_smithy_runtime_api::client::result::SdkError<
14            crate::operation::list_notification_events::ListNotificationEventsError,
15            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16        >,
17    > {
18        let mut fluent_builder = client.list_notification_events();
19        fluent_builder.inner = self;
20        fluent_builder.send().await
21    }
22}
23/// Fluent builder constructing a request to `ListNotificationEvents`.
24///
25/// <p>Returns a list of <code>NotificationEvents</code> according to specified filters, in reverse chronological order (newest first).</p><important>
26/// <p>User Notifications stores notifications in the individual Regions you register as notification hubs and the Region of the source event rule. ListNotificationEvents only returns notifications stored in the same Region in which the action is called. User Notifications doesn't backfill notifications to new Regions selected as notification hubs. For this reason, we recommend that you make calls in your oldest registered notification hub. For more information, see <a href="https://docs.aws.amazon.com/notifications/latest/userguide/notification-hubs.html">Notification hubs</a> in the <i>Amazon Web Services User Notifications User Guide</i>.</p>
27/// </important>
28#[derive(::std::clone::Clone, ::std::fmt::Debug)]
29pub struct ListNotificationEventsFluentBuilder {
30    handle: ::std::sync::Arc<crate::client::Handle>,
31    inner: crate::operation::list_notification_events::builders::ListNotificationEventsInputBuilder,
32    config_override: ::std::option::Option<crate::config::Builder>,
33}
34impl
35    crate::client::customize::internal::CustomizableSend<
36        crate::operation::list_notification_events::ListNotificationEventsOutput,
37        crate::operation::list_notification_events::ListNotificationEventsError,
38    > for ListNotificationEventsFluentBuilder
39{
40    fn send(
41        self,
42        config_override: crate::config::Builder,
43    ) -> crate::client::customize::internal::BoxFuture<
44        crate::client::customize::internal::SendResult<
45            crate::operation::list_notification_events::ListNotificationEventsOutput,
46            crate::operation::list_notification_events::ListNotificationEventsError,
47        >,
48    > {
49        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
50    }
51}
52impl ListNotificationEventsFluentBuilder {
53    /// Creates a new `ListNotificationEventsFluentBuilder`.
54    pub(crate) fn new(handle: ::std::sync::Arc<crate::client::Handle>) -> Self {
55        Self {
56            handle,
57            inner: ::std::default::Default::default(),
58            config_override: ::std::option::Option::None,
59        }
60    }
61    /// Access the ListNotificationEvents as a reference.
62    pub fn as_input(&self) -> &crate::operation::list_notification_events::builders::ListNotificationEventsInputBuilder {
63        &self.inner
64    }
65    /// Sends the request and returns the response.
66    ///
67    /// If an error occurs, an `SdkError` will be returned with additional details that
68    /// can be matched against.
69    ///
70    /// By default, any retryable failures will be retried twice. Retry behavior
71    /// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
72    /// set when configuring the client.
73    pub async fn send(
74        self,
75    ) -> ::std::result::Result<
76        crate::operation::list_notification_events::ListNotificationEventsOutput,
77        ::aws_smithy_runtime_api::client::result::SdkError<
78            crate::operation::list_notification_events::ListNotificationEventsError,
79            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
80        >,
81    > {
82        let input = self
83            .inner
84            .build()
85            .map_err(::aws_smithy_runtime_api::client::result::SdkError::construction_failure)?;
86        let runtime_plugins = crate::operation::list_notification_events::ListNotificationEvents::operation_runtime_plugins(
87            self.handle.runtime_plugins.clone(),
88            &self.handle.conf,
89            self.config_override,
90        );
91        crate::operation::list_notification_events::ListNotificationEvents::orchestrate(&runtime_plugins, input).await
92    }
93
94    /// Consumes this builder, creating a customizable operation that can be modified before being sent.
95    pub fn customize(
96        self,
97    ) -> crate::client::customize::CustomizableOperation<
98        crate::operation::list_notification_events::ListNotificationEventsOutput,
99        crate::operation::list_notification_events::ListNotificationEventsError,
100        Self,
101    > {
102        crate::client::customize::CustomizableOperation::new(self)
103    }
104    pub(crate) fn config_override(mut self, config_override: impl ::std::convert::Into<crate::config::Builder>) -> Self {
105        self.set_config_override(::std::option::Option::Some(config_override.into()));
106        self
107    }
108
109    pub(crate) fn set_config_override(&mut self, config_override: ::std::option::Option<crate::config::Builder>) -> &mut Self {
110        self.config_override = config_override;
111        self
112    }
113    /// Create a paginator for this request
114    ///
115    /// Paginators are used by calling [`send().await`](crate::operation::list_notification_events::paginator::ListNotificationEventsPaginator::send) which returns a [`PaginationStream`](aws_smithy_async::future::pagination_stream::PaginationStream).
116    pub fn into_paginator(self) -> crate::operation::list_notification_events::paginator::ListNotificationEventsPaginator {
117        crate::operation::list_notification_events::paginator::ListNotificationEventsPaginator::new(self.handle, self.inner)
118    }
119    /// <p>The earliest time of events to return from this call.</p>
120    pub fn start_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
121        self.inner = self.inner.start_time(input);
122        self
123    }
124    /// <p>The earliest time of events to return from this call.</p>
125    pub fn set_start_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
126        self.inner = self.inner.set_start_time(input);
127        self
128    }
129    /// <p>The earliest time of events to return from this call.</p>
130    pub fn get_start_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
131        self.inner.get_start_time()
132    }
133    /// <p>Latest time of events to return from this call.</p>
134    pub fn end_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
135        self.inner = self.inner.end_time(input);
136        self
137    }
138    /// <p>Latest time of events to return from this call.</p>
139    pub fn set_end_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
140        self.inner = self.inner.set_end_time(input);
141        self
142    }
143    /// <p>Latest time of events to return from this call.</p>
144    pub fn get_end_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
145        self.inner.get_end_time()
146    }
147    /// <p>The locale code of the language used for the retrieved <code>NotificationEvent</code>. The default locale is English <code>(en_US)</code>.</p>
148    pub fn locale(mut self, input: crate::types::LocaleCode) -> Self {
149        self.inner = self.inner.locale(input);
150        self
151    }
152    /// <p>The locale code of the language used for the retrieved <code>NotificationEvent</code>. The default locale is English <code>(en_US)</code>.</p>
153    pub fn set_locale(mut self, input: ::std::option::Option<crate::types::LocaleCode>) -> Self {
154        self.inner = self.inner.set_locale(input);
155        self
156    }
157    /// <p>The locale code of the language used for the retrieved <code>NotificationEvent</code>. The default locale is English <code>(en_US)</code>.</p>
158    pub fn get_locale(&self) -> &::std::option::Option<crate::types::LocaleCode> {
159        self.inner.get_locale()
160    }
161    /// <p>The matched event source.</p>
162    /// <p>Must match one of the valid EventBridge sources. Only Amazon Web Services service sourced events are supported. For example, <code>aws.ec2</code> and <code>aws.cloudwatch</code>. For more information, see <a href="https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-service-event.html#eb-service-event-delivery-level">Event delivery from Amazon Web Services services</a> in the <i>Amazon EventBridge User Guide</i>.</p>
163    pub fn source(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
164        self.inner = self.inner.source(input.into());
165        self
166    }
167    /// <p>The matched event source.</p>
168    /// <p>Must match one of the valid EventBridge sources. Only Amazon Web Services service sourced events are supported. For example, <code>aws.ec2</code> and <code>aws.cloudwatch</code>. For more information, see <a href="https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-service-event.html#eb-service-event-delivery-level">Event delivery from Amazon Web Services services</a> in the <i>Amazon EventBridge User Guide</i>.</p>
169    pub fn set_source(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
170        self.inner = self.inner.set_source(input);
171        self
172    }
173    /// <p>The matched event source.</p>
174    /// <p>Must match one of the valid EventBridge sources. Only Amazon Web Services service sourced events are supported. For example, <code>aws.ec2</code> and <code>aws.cloudwatch</code>. For more information, see <a href="https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-service-event.html#eb-service-event-delivery-level">Event delivery from Amazon Web Services services</a> in the <i>Amazon EventBridge User Guide</i>.</p>
175    pub fn get_source(&self) -> &::std::option::Option<::std::string::String> {
176        self.inner.get_source()
177    }
178    /// <p>Include aggregated child events in the result.</p>
179    pub fn include_child_events(mut self, input: bool) -> Self {
180        self.inner = self.inner.include_child_events(input);
181        self
182    }
183    /// <p>Include aggregated child events in the result.</p>
184    pub fn set_include_child_events(mut self, input: ::std::option::Option<bool>) -> Self {
185        self.inner = self.inner.set_include_child_events(input);
186        self
187    }
188    /// <p>Include aggregated child events in the result.</p>
189    pub fn get_include_child_events(&self) -> &::std::option::Option<bool> {
190        self.inner.get_include_child_events()
191    }
192    /// <p>The Amazon Resource Name (ARN) of the <code>aggregatedNotificationEventArn</code> to match.</p>
193    pub fn aggregate_notification_event_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
194        self.inner = self.inner.aggregate_notification_event_arn(input.into());
195        self
196    }
197    /// <p>The Amazon Resource Name (ARN) of the <code>aggregatedNotificationEventArn</code> to match.</p>
198    pub fn set_aggregate_notification_event_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
199        self.inner = self.inner.set_aggregate_notification_event_arn(input);
200        self
201    }
202    /// <p>The Amazon Resource Name (ARN) of the <code>aggregatedNotificationEventArn</code> to match.</p>
203    pub fn get_aggregate_notification_event_arn(&self) -> &::std::option::Option<::std::string::String> {
204        self.inner.get_aggregate_notification_event_arn()
205    }
206    /// <p>The maximum number of results to be returned in this call. Defaults to 20.</p>
207    pub fn max_results(mut self, input: i32) -> Self {
208        self.inner = self.inner.max_results(input);
209        self
210    }
211    /// <p>The maximum number of results to be returned in this call. Defaults to 20.</p>
212    pub fn set_max_results(mut self, input: ::std::option::Option<i32>) -> Self {
213        self.inner = self.inner.set_max_results(input);
214        self
215    }
216    /// <p>The maximum number of results to be returned in this call. Defaults to 20.</p>
217    pub fn get_max_results(&self) -> &::std::option::Option<i32> {
218        self.inner.get_max_results()
219    }
220    /// <p>The start token for paginated calls. Retrieved from the response of a previous <code>ListEventRules</code> call. Next token uses Base64 encoding.</p>
221    pub fn next_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
222        self.inner = self.inner.next_token(input.into());
223        self
224    }
225    /// <p>The start token for paginated calls. Retrieved from the response of a previous <code>ListEventRules</code> call. Next token uses Base64 encoding.</p>
226    pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
227        self.inner = self.inner.set_next_token(input);
228        self
229    }
230    /// <p>The start token for paginated calls. Retrieved from the response of a previous <code>ListEventRules</code> call. Next token uses Base64 encoding.</p>
231    pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
232        self.inner.get_next_token()
233    }
234    /// <p>The unique identifier of the organizational unit used to filter notification events.</p>
235    pub fn organizational_unit_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
236        self.inner = self.inner.organizational_unit_id(input.into());
237        self
238    }
239    /// <p>The unique identifier of the organizational unit used to filter notification events.</p>
240    pub fn set_organizational_unit_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
241        self.inner = self.inner.set_organizational_unit_id(input);
242        self
243    }
244    /// <p>The unique identifier of the organizational unit used to filter notification events.</p>
245    pub fn get_organizational_unit_id(&self) -> &::std::option::Option<::std::string::String> {
246        self.inner.get_organizational_unit_id()
247    }
248}