aws_sdk_appfabric/operation/create_ingestion/
_create_ingestion_input.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, ::std::fmt::Debug)]
5pub struct CreateIngestionInput {
6    /// <p>The Amazon Resource Name (ARN) or Universal Unique Identifier (UUID) of the app bundle to use for the request.</p>
7    pub app_bundle_identifier: ::std::option::Option<::std::string::String>,
8    /// <p>The name of the application.</p>
9    /// <p>Valid values are:</p>
10    /// <ul>
11    /// <li>
12    /// <p><code>SLACK</code></p></li>
13    /// <li>
14    /// <p><code>ASANA</code></p></li>
15    /// <li>
16    /// <p><code>JIRA</code></p></li>
17    /// <li>
18    /// <p><code>M365</code></p></li>
19    /// <li>
20    /// <p><code>M365AUDITLOGS</code></p></li>
21    /// <li>
22    /// <p><code>ZOOM</code></p></li>
23    /// <li>
24    /// <p><code>ZENDESK</code></p></li>
25    /// <li>
26    /// <p><code>OKTA</code></p></li>
27    /// <li>
28    /// <p><code>GOOGLE</code></p></li>
29    /// <li>
30    /// <p><code>DROPBOX</code></p></li>
31    /// <li>
32    /// <p><code>SMARTSHEET</code></p></li>
33    /// <li>
34    /// <p><code>CISCO</code></p></li>
35    /// </ul>
36    pub app: ::std::option::Option<::std::string::String>,
37    /// <p>The ID of the application tenant.</p>
38    pub tenant_id: ::std::option::Option<::std::string::String>,
39    /// <p>The ingestion type.</p>
40    pub ingestion_type: ::std::option::Option<crate::types::IngestionType>,
41    /// <p>Specifies a unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a <a href="https://wikipedia.org/wiki/Universally_unique_identifier">UUID type of value</a>.</p>
42    /// <p>If you don't provide this value, then Amazon Web Services generates a random one for you.</p>
43    /// <p>If you retry the operation with the same <code>ClientToken</code>, but with different parameters, the retry fails with an <code>IdempotentParameterMismatch</code> error.</p>
44    pub client_token: ::std::option::Option<::std::string::String>,
45    /// <p>A map of the key-value pairs of the tag or tags to assign to the resource.</p>
46    pub tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
47}
48impl CreateIngestionInput {
49    /// <p>The Amazon Resource Name (ARN) or Universal Unique Identifier (UUID) of the app bundle to use for the request.</p>
50    pub fn app_bundle_identifier(&self) -> ::std::option::Option<&str> {
51        self.app_bundle_identifier.as_deref()
52    }
53    /// <p>The name of the application.</p>
54    /// <p>Valid values are:</p>
55    /// <ul>
56    /// <li>
57    /// <p><code>SLACK</code></p></li>
58    /// <li>
59    /// <p><code>ASANA</code></p></li>
60    /// <li>
61    /// <p><code>JIRA</code></p></li>
62    /// <li>
63    /// <p><code>M365</code></p></li>
64    /// <li>
65    /// <p><code>M365AUDITLOGS</code></p></li>
66    /// <li>
67    /// <p><code>ZOOM</code></p></li>
68    /// <li>
69    /// <p><code>ZENDESK</code></p></li>
70    /// <li>
71    /// <p><code>OKTA</code></p></li>
72    /// <li>
73    /// <p><code>GOOGLE</code></p></li>
74    /// <li>
75    /// <p><code>DROPBOX</code></p></li>
76    /// <li>
77    /// <p><code>SMARTSHEET</code></p></li>
78    /// <li>
79    /// <p><code>CISCO</code></p></li>
80    /// </ul>
81    pub fn app(&self) -> ::std::option::Option<&str> {
82        self.app.as_deref()
83    }
84    /// <p>The ID of the application tenant.</p>
85    pub fn tenant_id(&self) -> ::std::option::Option<&str> {
86        self.tenant_id.as_deref()
87    }
88    /// <p>The ingestion type.</p>
89    pub fn ingestion_type(&self) -> ::std::option::Option<&crate::types::IngestionType> {
90        self.ingestion_type.as_ref()
91    }
92    /// <p>Specifies a unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a <a href="https://wikipedia.org/wiki/Universally_unique_identifier">UUID type of value</a>.</p>
93    /// <p>If you don't provide this value, then Amazon Web Services generates a random one for you.</p>
94    /// <p>If you retry the operation with the same <code>ClientToken</code>, but with different parameters, the retry fails with an <code>IdempotentParameterMismatch</code> error.</p>
95    pub fn client_token(&self) -> ::std::option::Option<&str> {
96        self.client_token.as_deref()
97    }
98    /// <p>A map of the key-value pairs of the tag or tags to assign to the resource.</p>
99    ///
100    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.tags.is_none()`.
101    pub fn tags(&self) -> &[crate::types::Tag] {
102        self.tags.as_deref().unwrap_or_default()
103    }
104}
105impl CreateIngestionInput {
106    /// Creates a new builder-style object to manufacture [`CreateIngestionInput`](crate::operation::create_ingestion::CreateIngestionInput).
107    pub fn builder() -> crate::operation::create_ingestion::builders::CreateIngestionInputBuilder {
108        crate::operation::create_ingestion::builders::CreateIngestionInputBuilder::default()
109    }
110}
111
112/// A builder for [`CreateIngestionInput`](crate::operation::create_ingestion::CreateIngestionInput).
113#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
114#[non_exhaustive]
115pub struct CreateIngestionInputBuilder {
116    pub(crate) app_bundle_identifier: ::std::option::Option<::std::string::String>,
117    pub(crate) app: ::std::option::Option<::std::string::String>,
118    pub(crate) tenant_id: ::std::option::Option<::std::string::String>,
119    pub(crate) ingestion_type: ::std::option::Option<crate::types::IngestionType>,
120    pub(crate) client_token: ::std::option::Option<::std::string::String>,
121    pub(crate) tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
122}
123impl CreateIngestionInputBuilder {
124    /// <p>The Amazon Resource Name (ARN) or Universal Unique Identifier (UUID) of the app bundle to use for the request.</p>
125    /// This field is required.
126    pub fn app_bundle_identifier(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
127        self.app_bundle_identifier = ::std::option::Option::Some(input.into());
128        self
129    }
130    /// <p>The Amazon Resource Name (ARN) or Universal Unique Identifier (UUID) of the app bundle to use for the request.</p>
131    pub fn set_app_bundle_identifier(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
132        self.app_bundle_identifier = input;
133        self
134    }
135    /// <p>The Amazon Resource Name (ARN) or Universal Unique Identifier (UUID) of the app bundle to use for the request.</p>
136    pub fn get_app_bundle_identifier(&self) -> &::std::option::Option<::std::string::String> {
137        &self.app_bundle_identifier
138    }
139    /// <p>The name of the application.</p>
140    /// <p>Valid values are:</p>
141    /// <ul>
142    /// <li>
143    /// <p><code>SLACK</code></p></li>
144    /// <li>
145    /// <p><code>ASANA</code></p></li>
146    /// <li>
147    /// <p><code>JIRA</code></p></li>
148    /// <li>
149    /// <p><code>M365</code></p></li>
150    /// <li>
151    /// <p><code>M365AUDITLOGS</code></p></li>
152    /// <li>
153    /// <p><code>ZOOM</code></p></li>
154    /// <li>
155    /// <p><code>ZENDESK</code></p></li>
156    /// <li>
157    /// <p><code>OKTA</code></p></li>
158    /// <li>
159    /// <p><code>GOOGLE</code></p></li>
160    /// <li>
161    /// <p><code>DROPBOX</code></p></li>
162    /// <li>
163    /// <p><code>SMARTSHEET</code></p></li>
164    /// <li>
165    /// <p><code>CISCO</code></p></li>
166    /// </ul>
167    /// This field is required.
168    pub fn app(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
169        self.app = ::std::option::Option::Some(input.into());
170        self
171    }
172    /// <p>The name of the application.</p>
173    /// <p>Valid values are:</p>
174    /// <ul>
175    /// <li>
176    /// <p><code>SLACK</code></p></li>
177    /// <li>
178    /// <p><code>ASANA</code></p></li>
179    /// <li>
180    /// <p><code>JIRA</code></p></li>
181    /// <li>
182    /// <p><code>M365</code></p></li>
183    /// <li>
184    /// <p><code>M365AUDITLOGS</code></p></li>
185    /// <li>
186    /// <p><code>ZOOM</code></p></li>
187    /// <li>
188    /// <p><code>ZENDESK</code></p></li>
189    /// <li>
190    /// <p><code>OKTA</code></p></li>
191    /// <li>
192    /// <p><code>GOOGLE</code></p></li>
193    /// <li>
194    /// <p><code>DROPBOX</code></p></li>
195    /// <li>
196    /// <p><code>SMARTSHEET</code></p></li>
197    /// <li>
198    /// <p><code>CISCO</code></p></li>
199    /// </ul>
200    pub fn set_app(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
201        self.app = input;
202        self
203    }
204    /// <p>The name of the application.</p>
205    /// <p>Valid values are:</p>
206    /// <ul>
207    /// <li>
208    /// <p><code>SLACK</code></p></li>
209    /// <li>
210    /// <p><code>ASANA</code></p></li>
211    /// <li>
212    /// <p><code>JIRA</code></p></li>
213    /// <li>
214    /// <p><code>M365</code></p></li>
215    /// <li>
216    /// <p><code>M365AUDITLOGS</code></p></li>
217    /// <li>
218    /// <p><code>ZOOM</code></p></li>
219    /// <li>
220    /// <p><code>ZENDESK</code></p></li>
221    /// <li>
222    /// <p><code>OKTA</code></p></li>
223    /// <li>
224    /// <p><code>GOOGLE</code></p></li>
225    /// <li>
226    /// <p><code>DROPBOX</code></p></li>
227    /// <li>
228    /// <p><code>SMARTSHEET</code></p></li>
229    /// <li>
230    /// <p><code>CISCO</code></p></li>
231    /// </ul>
232    pub fn get_app(&self) -> &::std::option::Option<::std::string::String> {
233        &self.app
234    }
235    /// <p>The ID of the application tenant.</p>
236    /// This field is required.
237    pub fn tenant_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
238        self.tenant_id = ::std::option::Option::Some(input.into());
239        self
240    }
241    /// <p>The ID of the application tenant.</p>
242    pub fn set_tenant_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
243        self.tenant_id = input;
244        self
245    }
246    /// <p>The ID of the application tenant.</p>
247    pub fn get_tenant_id(&self) -> &::std::option::Option<::std::string::String> {
248        &self.tenant_id
249    }
250    /// <p>The ingestion type.</p>
251    /// This field is required.
252    pub fn ingestion_type(mut self, input: crate::types::IngestionType) -> Self {
253        self.ingestion_type = ::std::option::Option::Some(input);
254        self
255    }
256    /// <p>The ingestion type.</p>
257    pub fn set_ingestion_type(mut self, input: ::std::option::Option<crate::types::IngestionType>) -> Self {
258        self.ingestion_type = input;
259        self
260    }
261    /// <p>The ingestion type.</p>
262    pub fn get_ingestion_type(&self) -> &::std::option::Option<crate::types::IngestionType> {
263        &self.ingestion_type
264    }
265    /// <p>Specifies a unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a <a href="https://wikipedia.org/wiki/Universally_unique_identifier">UUID type of value</a>.</p>
266    /// <p>If you don't provide this value, then Amazon Web Services generates a random one for you.</p>
267    /// <p>If you retry the operation with the same <code>ClientToken</code>, but with different parameters, the retry fails with an <code>IdempotentParameterMismatch</code> error.</p>
268    pub fn client_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
269        self.client_token = ::std::option::Option::Some(input.into());
270        self
271    }
272    /// <p>Specifies a unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a <a href="https://wikipedia.org/wiki/Universally_unique_identifier">UUID type of value</a>.</p>
273    /// <p>If you don't provide this value, then Amazon Web Services generates a random one for you.</p>
274    /// <p>If you retry the operation with the same <code>ClientToken</code>, but with different parameters, the retry fails with an <code>IdempotentParameterMismatch</code> error.</p>
275    pub fn set_client_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
276        self.client_token = input;
277        self
278    }
279    /// <p>Specifies a unique, case-sensitive identifier that you provide to ensure the idempotency of the request. This lets you safely retry the request without accidentally performing the same operation a second time. Passing the same value to a later call to an operation requires that you also pass the same value for all other parameters. We recommend that you use a <a href="https://wikipedia.org/wiki/Universally_unique_identifier">UUID type of value</a>.</p>
280    /// <p>If you don't provide this value, then Amazon Web Services generates a random one for you.</p>
281    /// <p>If you retry the operation with the same <code>ClientToken</code>, but with different parameters, the retry fails with an <code>IdempotentParameterMismatch</code> error.</p>
282    pub fn get_client_token(&self) -> &::std::option::Option<::std::string::String> {
283        &self.client_token
284    }
285    /// Appends an item to `tags`.
286    ///
287    /// To override the contents of this collection use [`set_tags`](Self::set_tags).
288    ///
289    /// <p>A map of the key-value pairs of the tag or tags to assign to the resource.</p>
290    pub fn tags(mut self, input: crate::types::Tag) -> Self {
291        let mut v = self.tags.unwrap_or_default();
292        v.push(input);
293        self.tags = ::std::option::Option::Some(v);
294        self
295    }
296    /// <p>A map of the key-value pairs of the tag or tags to assign to the resource.</p>
297    pub fn set_tags(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>) -> Self {
298        self.tags = input;
299        self
300    }
301    /// <p>A map of the key-value pairs of the tag or tags to assign to the resource.</p>
302    pub fn get_tags(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Tag>> {
303        &self.tags
304    }
305    /// Consumes the builder and constructs a [`CreateIngestionInput`](crate::operation::create_ingestion::CreateIngestionInput).
306    pub fn build(
307        self,
308    ) -> ::std::result::Result<crate::operation::create_ingestion::CreateIngestionInput, ::aws_smithy_types::error::operation::BuildError> {
309        ::std::result::Result::Ok(crate::operation::create_ingestion::CreateIngestionInput {
310            app_bundle_identifier: self.app_bundle_identifier,
311            app: self.app,
312            tenant_id: self.tenant_id,
313            ingestion_type: self.ingestion_type,
314            client_token: self.client_token,
315            tags: self.tags,
316        })
317    }
318}