aws_sdk_mgn/operation/create_wave/
_create_wave_output.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(missing_docs)] // documentation missing in model
3#[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq)]
5pub struct CreateWaveOutput {
6    /// <p>Wave ID.</p>
7    pub wave_id: ::std::option::Option<::std::string::String>,
8    /// <p>Wave ARN.</p>
9    pub arn: ::std::option::Option<::std::string::String>,
10    /// <p>Wave name.</p>
11    pub name: ::std::option::Option<::std::string::String>,
12    /// <p>Wave description.</p>
13    pub description: ::std::option::Option<::std::string::String>,
14    /// <p>Wave archival status.</p>
15    pub is_archived: ::std::option::Option<bool>,
16    /// <p>Wave aggregated status.</p>
17    pub wave_aggregated_status: ::std::option::Option<crate::types::WaveAggregatedStatus>,
18    /// <p>Wave creation dateTime.</p>
19    pub creation_date_time: ::std::option::Option<::std::string::String>,
20    /// <p>Wave last modified dateTime.</p>
21    pub last_modified_date_time: ::std::option::Option<::std::string::String>,
22    /// <p>Wave tags.</p>
23    pub tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
24    _request_id: Option<String>,
25}
26impl CreateWaveOutput {
27    /// <p>Wave ID.</p>
28    pub fn wave_id(&self) -> ::std::option::Option<&str> {
29        self.wave_id.as_deref()
30    }
31    /// <p>Wave ARN.</p>
32    pub fn arn(&self) -> ::std::option::Option<&str> {
33        self.arn.as_deref()
34    }
35    /// <p>Wave name.</p>
36    pub fn name(&self) -> ::std::option::Option<&str> {
37        self.name.as_deref()
38    }
39    /// <p>Wave description.</p>
40    pub fn description(&self) -> ::std::option::Option<&str> {
41        self.description.as_deref()
42    }
43    /// <p>Wave archival status.</p>
44    pub fn is_archived(&self) -> ::std::option::Option<bool> {
45        self.is_archived
46    }
47    /// <p>Wave aggregated status.</p>
48    pub fn wave_aggregated_status(&self) -> ::std::option::Option<&crate::types::WaveAggregatedStatus> {
49        self.wave_aggregated_status.as_ref()
50    }
51    /// <p>Wave creation dateTime.</p>
52    pub fn creation_date_time(&self) -> ::std::option::Option<&str> {
53        self.creation_date_time.as_deref()
54    }
55    /// <p>Wave last modified dateTime.</p>
56    pub fn last_modified_date_time(&self) -> ::std::option::Option<&str> {
57        self.last_modified_date_time.as_deref()
58    }
59    /// <p>Wave tags.</p>
60    pub fn tags(&self) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, ::std::string::String>> {
61        self.tags.as_ref()
62    }
63}
64impl ::std::fmt::Debug for CreateWaveOutput {
65    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
66        let mut formatter = f.debug_struct("CreateWaveOutput");
67        formatter.field("wave_id", &self.wave_id);
68        formatter.field("arn", &self.arn);
69        formatter.field("name", &self.name);
70        formatter.field("description", &self.description);
71        formatter.field("is_archived", &self.is_archived);
72        formatter.field("wave_aggregated_status", &self.wave_aggregated_status);
73        formatter.field("creation_date_time", &self.creation_date_time);
74        formatter.field("last_modified_date_time", &self.last_modified_date_time);
75        formatter.field("tags", &"*** Sensitive Data Redacted ***");
76        formatter.field("_request_id", &self._request_id);
77        formatter.finish()
78    }
79}
80impl ::aws_types::request_id::RequestId for CreateWaveOutput {
81    fn request_id(&self) -> Option<&str> {
82        self._request_id.as_deref()
83    }
84}
85impl CreateWaveOutput {
86    /// Creates a new builder-style object to manufacture [`CreateWaveOutput`](crate::operation::create_wave::CreateWaveOutput).
87    pub fn builder() -> crate::operation::create_wave::builders::CreateWaveOutputBuilder {
88        crate::operation::create_wave::builders::CreateWaveOutputBuilder::default()
89    }
90}
91
92/// A builder for [`CreateWaveOutput`](crate::operation::create_wave::CreateWaveOutput).
93#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
94#[non_exhaustive]
95pub struct CreateWaveOutputBuilder {
96    pub(crate) wave_id: ::std::option::Option<::std::string::String>,
97    pub(crate) arn: ::std::option::Option<::std::string::String>,
98    pub(crate) name: ::std::option::Option<::std::string::String>,
99    pub(crate) description: ::std::option::Option<::std::string::String>,
100    pub(crate) is_archived: ::std::option::Option<bool>,
101    pub(crate) wave_aggregated_status: ::std::option::Option<crate::types::WaveAggregatedStatus>,
102    pub(crate) creation_date_time: ::std::option::Option<::std::string::String>,
103    pub(crate) last_modified_date_time: ::std::option::Option<::std::string::String>,
104    pub(crate) tags: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
105    _request_id: Option<String>,
106}
107impl CreateWaveOutputBuilder {
108    /// <p>Wave ID.</p>
109    pub fn wave_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
110        self.wave_id = ::std::option::Option::Some(input.into());
111        self
112    }
113    /// <p>Wave ID.</p>
114    pub fn set_wave_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
115        self.wave_id = input;
116        self
117    }
118    /// <p>Wave ID.</p>
119    pub fn get_wave_id(&self) -> &::std::option::Option<::std::string::String> {
120        &self.wave_id
121    }
122    /// <p>Wave ARN.</p>
123    pub fn arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
124        self.arn = ::std::option::Option::Some(input.into());
125        self
126    }
127    /// <p>Wave ARN.</p>
128    pub fn set_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
129        self.arn = input;
130        self
131    }
132    /// <p>Wave ARN.</p>
133    pub fn get_arn(&self) -> &::std::option::Option<::std::string::String> {
134        &self.arn
135    }
136    /// <p>Wave name.</p>
137    pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
138        self.name = ::std::option::Option::Some(input.into());
139        self
140    }
141    /// <p>Wave name.</p>
142    pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
143        self.name = input;
144        self
145    }
146    /// <p>Wave name.</p>
147    pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
148        &self.name
149    }
150    /// <p>Wave description.</p>
151    pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
152        self.description = ::std::option::Option::Some(input.into());
153        self
154    }
155    /// <p>Wave description.</p>
156    pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
157        self.description = input;
158        self
159    }
160    /// <p>Wave description.</p>
161    pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
162        &self.description
163    }
164    /// <p>Wave archival status.</p>
165    pub fn is_archived(mut self, input: bool) -> Self {
166        self.is_archived = ::std::option::Option::Some(input);
167        self
168    }
169    /// <p>Wave archival status.</p>
170    pub fn set_is_archived(mut self, input: ::std::option::Option<bool>) -> Self {
171        self.is_archived = input;
172        self
173    }
174    /// <p>Wave archival status.</p>
175    pub fn get_is_archived(&self) -> &::std::option::Option<bool> {
176        &self.is_archived
177    }
178    /// <p>Wave aggregated status.</p>
179    pub fn wave_aggregated_status(mut self, input: crate::types::WaveAggregatedStatus) -> Self {
180        self.wave_aggregated_status = ::std::option::Option::Some(input);
181        self
182    }
183    /// <p>Wave aggregated status.</p>
184    pub fn set_wave_aggregated_status(mut self, input: ::std::option::Option<crate::types::WaveAggregatedStatus>) -> Self {
185        self.wave_aggregated_status = input;
186        self
187    }
188    /// <p>Wave aggregated status.</p>
189    pub fn get_wave_aggregated_status(&self) -> &::std::option::Option<crate::types::WaveAggregatedStatus> {
190        &self.wave_aggregated_status
191    }
192    /// <p>Wave creation dateTime.</p>
193    pub fn creation_date_time(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
194        self.creation_date_time = ::std::option::Option::Some(input.into());
195        self
196    }
197    /// <p>Wave creation dateTime.</p>
198    pub fn set_creation_date_time(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
199        self.creation_date_time = input;
200        self
201    }
202    /// <p>Wave creation dateTime.</p>
203    pub fn get_creation_date_time(&self) -> &::std::option::Option<::std::string::String> {
204        &self.creation_date_time
205    }
206    /// <p>Wave last modified dateTime.</p>
207    pub fn last_modified_date_time(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
208        self.last_modified_date_time = ::std::option::Option::Some(input.into());
209        self
210    }
211    /// <p>Wave last modified dateTime.</p>
212    pub fn set_last_modified_date_time(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
213        self.last_modified_date_time = input;
214        self
215    }
216    /// <p>Wave last modified dateTime.</p>
217    pub fn get_last_modified_date_time(&self) -> &::std::option::Option<::std::string::String> {
218        &self.last_modified_date_time
219    }
220    /// Adds a key-value pair to `tags`.
221    ///
222    /// To override the contents of this collection use [`set_tags`](Self::set_tags).
223    ///
224    /// <p>Wave tags.</p>
225    pub fn tags(mut self, k: impl ::std::convert::Into<::std::string::String>, v: impl ::std::convert::Into<::std::string::String>) -> Self {
226        let mut hash_map = self.tags.unwrap_or_default();
227        hash_map.insert(k.into(), v.into());
228        self.tags = ::std::option::Option::Some(hash_map);
229        self
230    }
231    /// <p>Wave tags.</p>
232    pub fn set_tags(mut self, input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>) -> Self {
233        self.tags = input;
234        self
235    }
236    /// <p>Wave tags.</p>
237    pub fn get_tags(&self) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
238        &self.tags
239    }
240    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
241        self._request_id = Some(request_id.into());
242        self
243    }
244
245    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
246        self._request_id = request_id;
247        self
248    }
249    /// Consumes the builder and constructs a [`CreateWaveOutput`](crate::operation::create_wave::CreateWaveOutput).
250    pub fn build(self) -> crate::operation::create_wave::CreateWaveOutput {
251        crate::operation::create_wave::CreateWaveOutput {
252            wave_id: self.wave_id,
253            arn: self.arn,
254            name: self.name,
255            description: self.description,
256            is_archived: self.is_archived,
257            wave_aggregated_status: self.wave_aggregated_status,
258            creation_date_time: self.creation_date_time,
259            last_modified_date_time: self.last_modified_date_time,
260            tags: self.tags,
261            _request_id: self._request_id,
262        }
263    }
264}
265impl ::std::fmt::Debug for CreateWaveOutputBuilder {
266    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
267        let mut formatter = f.debug_struct("CreateWaveOutputBuilder");
268        formatter.field("wave_id", &self.wave_id);
269        formatter.field("arn", &self.arn);
270        formatter.field("name", &self.name);
271        formatter.field("description", &self.description);
272        formatter.field("is_archived", &self.is_archived);
273        formatter.field("wave_aggregated_status", &self.wave_aggregated_status);
274        formatter.field("creation_date_time", &self.creation_date_time);
275        formatter.field("last_modified_date_time", &self.last_modified_date_time);
276        formatter.field("tags", &"*** Sensitive Data Redacted ***");
277        formatter.field("_request_id", &self._request_id);
278        formatter.finish()
279    }
280}