aws_sdk_iotanalytics/operation/update_dataset/
builders.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2pub use crate::operation::update_dataset::_update_dataset_output::UpdateDatasetOutputBuilder;
3
4pub use crate::operation::update_dataset::_update_dataset_input::UpdateDatasetInputBuilder;
5
6impl crate::operation::update_dataset::builders::UpdateDatasetInputBuilder {
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::update_dataset::UpdateDatasetOutput,
13        ::aws_smithy_runtime_api::client::result::SdkError<
14            crate::operation::update_dataset::UpdateDatasetError,
15            ::aws_smithy_runtime_api::client::orchestrator::HttpResponse,
16        >,
17    > {
18        let mut fluent_builder = client.update_dataset();
19        fluent_builder.inner = self;
20        fluent_builder.send().await
21    }
22}
23/// Fluent builder constructing a request to `UpdateDataset`.
24///
25/// <p>Updates the settings of a dataset.</p>
26#[derive(::std::clone::Clone, ::std::fmt::Debug)]
27pub struct UpdateDatasetFluentBuilder {
28    handle: ::std::sync::Arc<crate::client::Handle>,
29    inner: crate::operation::update_dataset::builders::UpdateDatasetInputBuilder,
30    config_override: ::std::option::Option<crate::config::Builder>,
31}
32impl
33    crate::client::customize::internal::CustomizableSend<
34        crate::operation::update_dataset::UpdateDatasetOutput,
35        crate::operation::update_dataset::UpdateDatasetError,
36    > for UpdateDatasetFluentBuilder
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::update_dataset::UpdateDatasetOutput,
44            crate::operation::update_dataset::UpdateDatasetError,
45        >,
46    > {
47        ::std::boxed::Box::pin(async move { self.config_override(config_override).send().await })
48    }
49}
50impl UpdateDatasetFluentBuilder {
51    /// Creates a new `UpdateDatasetFluentBuilder`.
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 UpdateDataset as a reference.
60    pub fn as_input(&self) -> &crate::operation::update_dataset::builders::UpdateDatasetInputBuilder {
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::update_dataset::UpdateDatasetOutput,
75        ::aws_smithy_runtime_api::client::result::SdkError<
76            crate::operation::update_dataset::UpdateDatasetError,
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::update_dataset::UpdateDataset::operation_runtime_plugins(
85            self.handle.runtime_plugins.clone(),
86            &self.handle.conf,
87            self.config_override,
88        );
89        crate::operation::update_dataset::UpdateDataset::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::update_dataset::UpdateDatasetOutput,
97        crate::operation::update_dataset::UpdateDatasetError,
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    /// <p>The name of the dataset to update.</p>
112    pub fn dataset_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
113        self.inner = self.inner.dataset_name(input.into());
114        self
115    }
116    /// <p>The name of the dataset to update.</p>
117    pub fn set_dataset_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
118        self.inner = self.inner.set_dataset_name(input);
119        self
120    }
121    /// <p>The name of the dataset to update.</p>
122    pub fn get_dataset_name(&self) -> &::std::option::Option<::std::string::String> {
123        self.inner.get_dataset_name()
124    }
125    ///
126    /// Appends an item to `actions`.
127    ///
128    /// To override the contents of this collection use [`set_actions`](Self::set_actions).
129    ///
130    /// <p>A list of <code>DatasetAction</code> objects.</p>
131    pub fn actions(mut self, input: crate::types::DatasetAction) -> Self {
132        self.inner = self.inner.actions(input);
133        self
134    }
135    /// <p>A list of <code>DatasetAction</code> objects.</p>
136    pub fn set_actions(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::DatasetAction>>) -> Self {
137        self.inner = self.inner.set_actions(input);
138        self
139    }
140    /// <p>A list of <code>DatasetAction</code> objects.</p>
141    pub fn get_actions(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::DatasetAction>> {
142        self.inner.get_actions()
143    }
144    ///
145    /// Appends an item to `triggers`.
146    ///
147    /// To override the contents of this collection use [`set_triggers`](Self::set_triggers).
148    ///
149    /// <p>A list of <code>DatasetTrigger</code> objects. The list can be empty or can contain up to five <code>DatasetTrigger</code> objects.</p>
150    pub fn triggers(mut self, input: crate::types::DatasetTrigger) -> Self {
151        self.inner = self.inner.triggers(input);
152        self
153    }
154    /// <p>A list of <code>DatasetTrigger</code> objects. The list can be empty or can contain up to five <code>DatasetTrigger</code> objects.</p>
155    pub fn set_triggers(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::DatasetTrigger>>) -> Self {
156        self.inner = self.inner.set_triggers(input);
157        self
158    }
159    /// <p>A list of <code>DatasetTrigger</code> objects. The list can be empty or can contain up to five <code>DatasetTrigger</code> objects.</p>
160    pub fn get_triggers(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::DatasetTrigger>> {
161        self.inner.get_triggers()
162    }
163    ///
164    /// Appends an item to `contentDeliveryRules`.
165    ///
166    /// To override the contents of this collection use [`set_content_delivery_rules`](Self::set_content_delivery_rules).
167    ///
168    /// <p>When dataset contents are created, they are delivered to destinations specified here.</p>
169    pub fn content_delivery_rules(mut self, input: crate::types::DatasetContentDeliveryRule) -> Self {
170        self.inner = self.inner.content_delivery_rules(input);
171        self
172    }
173    /// <p>When dataset contents are created, they are delivered to destinations specified here.</p>
174    pub fn set_content_delivery_rules(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::DatasetContentDeliveryRule>>) -> Self {
175        self.inner = self.inner.set_content_delivery_rules(input);
176        self
177    }
178    /// <p>When dataset contents are created, they are delivered to destinations specified here.</p>
179    pub fn get_content_delivery_rules(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::DatasetContentDeliveryRule>> {
180        self.inner.get_content_delivery_rules()
181    }
182    /// <p>How long, in days, dataset contents are kept for the dataset.</p>
183    pub fn retention_period(mut self, input: crate::types::RetentionPeriod) -> Self {
184        self.inner = self.inner.retention_period(input);
185        self
186    }
187    /// <p>How long, in days, dataset contents are kept for the dataset.</p>
188    pub fn set_retention_period(mut self, input: ::std::option::Option<crate::types::RetentionPeriod>) -> Self {
189        self.inner = self.inner.set_retention_period(input);
190        self
191    }
192    /// <p>How long, in days, dataset contents are kept for the dataset.</p>
193    pub fn get_retention_period(&self) -> &::std::option::Option<crate::types::RetentionPeriod> {
194        self.inner.get_retention_period()
195    }
196    /// <p>Optional. How many versions of dataset contents are kept. If not specified or set to null, only the latest version plus the latest succeeded version (if they are different) are kept for the time period specified by the <code>retentionPeriod</code> parameter. For more information, see <a href="https://docs.aws.amazon.com/iotanalytics/latest/userguide/getting-started.html#aws-iot-analytics-dataset-versions">Keeping Multiple Versions of IoT Analytics datasets</a> in the <i>IoT Analytics User Guide</i>.</p>
197    pub fn versioning_configuration(mut self, input: crate::types::VersioningConfiguration) -> Self {
198        self.inner = self.inner.versioning_configuration(input);
199        self
200    }
201    /// <p>Optional. How many versions of dataset contents are kept. If not specified or set to null, only the latest version plus the latest succeeded version (if they are different) are kept for the time period specified by the <code>retentionPeriod</code> parameter. For more information, see <a href="https://docs.aws.amazon.com/iotanalytics/latest/userguide/getting-started.html#aws-iot-analytics-dataset-versions">Keeping Multiple Versions of IoT Analytics datasets</a> in the <i>IoT Analytics User Guide</i>.</p>
202    pub fn set_versioning_configuration(mut self, input: ::std::option::Option<crate::types::VersioningConfiguration>) -> Self {
203        self.inner = self.inner.set_versioning_configuration(input);
204        self
205    }
206    /// <p>Optional. How many versions of dataset contents are kept. If not specified or set to null, only the latest version plus the latest succeeded version (if they are different) are kept for the time period specified by the <code>retentionPeriod</code> parameter. For more information, see <a href="https://docs.aws.amazon.com/iotanalytics/latest/userguide/getting-started.html#aws-iot-analytics-dataset-versions">Keeping Multiple Versions of IoT Analytics datasets</a> in the <i>IoT Analytics User Guide</i>.</p>
207    pub fn get_versioning_configuration(&self) -> &::std::option::Option<crate::types::VersioningConfiguration> {
208        self.inner.get_versioning_configuration()
209    }
210    ///
211    /// Appends an item to `lateDataRules`.
212    ///
213    /// To override the contents of this collection use [`set_late_data_rules`](Self::set_late_data_rules).
214    ///
215    /// <p>A list of data rules that send notifications to CloudWatch, when data arrives late. To specify <code>lateDataRules</code>, the dataset must use a <a href="https://docs.aws.amazon.com/iotanalytics/latest/APIReference/API_DeltaTime.html">DeltaTimer</a> filter.</p>
216    pub fn late_data_rules(mut self, input: crate::types::LateDataRule) -> Self {
217        self.inner = self.inner.late_data_rules(input);
218        self
219    }
220    /// <p>A list of data rules that send notifications to CloudWatch, when data arrives late. To specify <code>lateDataRules</code>, the dataset must use a <a href="https://docs.aws.amazon.com/iotanalytics/latest/APIReference/API_DeltaTime.html">DeltaTimer</a> filter.</p>
221    pub fn set_late_data_rules(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::LateDataRule>>) -> Self {
222        self.inner = self.inner.set_late_data_rules(input);
223        self
224    }
225    /// <p>A list of data rules that send notifications to CloudWatch, when data arrives late. To specify <code>lateDataRules</code>, the dataset must use a <a href="https://docs.aws.amazon.com/iotanalytics/latest/APIReference/API_DeltaTime.html">DeltaTimer</a> filter.</p>
226    pub fn get_late_data_rules(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::LateDataRule>> {
227        self.inner.get_late_data_rules()
228    }
229}