aws_sdk_lexmodelbuilding/operation/get_intent/
_get_intent_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, ::std::fmt::Debug)]
5pub struct GetIntentOutput {
6    /// <p>The name of the intent.</p>
7    pub name: ::std::option::Option<::std::string::String>,
8    /// <p>A description of the intent.</p>
9    pub description: ::std::option::Option<::std::string::String>,
10    /// <p>An array of intent slots configured for the intent.</p>
11    pub slots: ::std::option::Option<::std::vec::Vec<crate::types::Slot>>,
12    /// <p>An array of sample utterances configured for the intent.</p>
13    pub sample_utterances: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
14    /// <p>If defined in the bot, Amazon Lex uses prompt to confirm the intent before fulfilling the user's request. For more information, see <code>PutIntent</code>.</p>
15    pub confirmation_prompt: ::std::option::Option<crate::types::Prompt>,
16    /// <p>If the user answers "no" to the question defined in <code>confirmationPrompt</code>, Amazon Lex responds with this statement to acknowledge that the intent was canceled.</p>
17    pub rejection_statement: ::std::option::Option<crate::types::Statement>,
18    /// <p>If defined in the bot, Amazon Lex uses this prompt to solicit additional user activity after the intent is fulfilled. For more information, see <code>PutIntent</code>.</p>
19    pub follow_up_prompt: ::std::option::Option<crate::types::FollowUpPrompt>,
20    /// <p>After the Lambda function specified in the <code>fulfillmentActivity</code> element fulfills the intent, Amazon Lex conveys this statement to the user.</p>
21    pub conclusion_statement: ::std::option::Option<crate::types::Statement>,
22    /// <p>If defined in the bot, Amazon Amazon Lex invokes this Lambda function for each user input. For more information, see <code>PutIntent</code>.</p>
23    pub dialog_code_hook: ::std::option::Option<crate::types::CodeHook>,
24    /// <p>Describes how the intent is fulfilled. For more information, see <code>PutIntent</code>.</p>
25    pub fulfillment_activity: ::std::option::Option<crate::types::FulfillmentActivity>,
26    /// <p>A unique identifier for a built-in intent.</p>
27    pub parent_intent_signature: ::std::option::Option<::std::string::String>,
28    /// <p>The date that the intent was updated. When you create a resource, the creation date and the last updated date are the same.</p>
29    pub last_updated_date: ::std::option::Option<::aws_smithy_types::DateTime>,
30    /// <p>The date that the intent was created.</p>
31    pub created_date: ::std::option::Option<::aws_smithy_types::DateTime>,
32    /// <p>The version of the intent.</p>
33    pub version: ::std::option::Option<::std::string::String>,
34    /// <p>Checksum of the intent.</p>
35    pub checksum: ::std::option::Option<::std::string::String>,
36    /// <p>Configuration information, if any, to connect to an Amazon Kendra index with the <code>AMAZON.KendraSearchIntent</code> intent.</p>
37    pub kendra_configuration: ::std::option::Option<crate::types::KendraConfiguration>,
38    /// <p>An array of <code>InputContext</code> objects that lists the contexts that must be active for Amazon Lex to choose the intent in a conversation with the user.</p>
39    pub input_contexts: ::std::option::Option<::std::vec::Vec<crate::types::InputContext>>,
40    /// <p>An array of <code>OutputContext</code> objects that lists the contexts that the intent activates when the intent is fulfilled.</p>
41    pub output_contexts: ::std::option::Option<::std::vec::Vec<crate::types::OutputContext>>,
42    _request_id: Option<String>,
43}
44impl GetIntentOutput {
45    /// <p>The name of the intent.</p>
46    pub fn name(&self) -> ::std::option::Option<&str> {
47        self.name.as_deref()
48    }
49    /// <p>A description of the intent.</p>
50    pub fn description(&self) -> ::std::option::Option<&str> {
51        self.description.as_deref()
52    }
53    /// <p>An array of intent slots configured for the intent.</p>
54    ///
55    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.slots.is_none()`.
56    pub fn slots(&self) -> &[crate::types::Slot] {
57        self.slots.as_deref().unwrap_or_default()
58    }
59    /// <p>An array of sample utterances configured for the intent.</p>
60    ///
61    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.sample_utterances.is_none()`.
62    pub fn sample_utterances(&self) -> &[::std::string::String] {
63        self.sample_utterances.as_deref().unwrap_or_default()
64    }
65    /// <p>If defined in the bot, Amazon Lex uses prompt to confirm the intent before fulfilling the user's request. For more information, see <code>PutIntent</code>.</p>
66    pub fn confirmation_prompt(&self) -> ::std::option::Option<&crate::types::Prompt> {
67        self.confirmation_prompt.as_ref()
68    }
69    /// <p>If the user answers "no" to the question defined in <code>confirmationPrompt</code>, Amazon Lex responds with this statement to acknowledge that the intent was canceled.</p>
70    pub fn rejection_statement(&self) -> ::std::option::Option<&crate::types::Statement> {
71        self.rejection_statement.as_ref()
72    }
73    /// <p>If defined in the bot, Amazon Lex uses this prompt to solicit additional user activity after the intent is fulfilled. For more information, see <code>PutIntent</code>.</p>
74    pub fn follow_up_prompt(&self) -> ::std::option::Option<&crate::types::FollowUpPrompt> {
75        self.follow_up_prompt.as_ref()
76    }
77    /// <p>After the Lambda function specified in the <code>fulfillmentActivity</code> element fulfills the intent, Amazon Lex conveys this statement to the user.</p>
78    pub fn conclusion_statement(&self) -> ::std::option::Option<&crate::types::Statement> {
79        self.conclusion_statement.as_ref()
80    }
81    /// <p>If defined in the bot, Amazon Amazon Lex invokes this Lambda function for each user input. For more information, see <code>PutIntent</code>.</p>
82    pub fn dialog_code_hook(&self) -> ::std::option::Option<&crate::types::CodeHook> {
83        self.dialog_code_hook.as_ref()
84    }
85    /// <p>Describes how the intent is fulfilled. For more information, see <code>PutIntent</code>.</p>
86    pub fn fulfillment_activity(&self) -> ::std::option::Option<&crate::types::FulfillmentActivity> {
87        self.fulfillment_activity.as_ref()
88    }
89    /// <p>A unique identifier for a built-in intent.</p>
90    pub fn parent_intent_signature(&self) -> ::std::option::Option<&str> {
91        self.parent_intent_signature.as_deref()
92    }
93    /// <p>The date that the intent was updated. When you create a resource, the creation date and the last updated date are the same.</p>
94    pub fn last_updated_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
95        self.last_updated_date.as_ref()
96    }
97    /// <p>The date that the intent was created.</p>
98    pub fn created_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
99        self.created_date.as_ref()
100    }
101    /// <p>The version of the intent.</p>
102    pub fn version(&self) -> ::std::option::Option<&str> {
103        self.version.as_deref()
104    }
105    /// <p>Checksum of the intent.</p>
106    pub fn checksum(&self) -> ::std::option::Option<&str> {
107        self.checksum.as_deref()
108    }
109    /// <p>Configuration information, if any, to connect to an Amazon Kendra index with the <code>AMAZON.KendraSearchIntent</code> intent.</p>
110    pub fn kendra_configuration(&self) -> ::std::option::Option<&crate::types::KendraConfiguration> {
111        self.kendra_configuration.as_ref()
112    }
113    /// <p>An array of <code>InputContext</code> objects that lists the contexts that must be active for Amazon Lex to choose the intent in a conversation with the user.</p>
114    ///
115    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.input_contexts.is_none()`.
116    pub fn input_contexts(&self) -> &[crate::types::InputContext] {
117        self.input_contexts.as_deref().unwrap_or_default()
118    }
119    /// <p>An array of <code>OutputContext</code> objects that lists the contexts that the intent activates when the intent is fulfilled.</p>
120    ///
121    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.output_contexts.is_none()`.
122    pub fn output_contexts(&self) -> &[crate::types::OutputContext] {
123        self.output_contexts.as_deref().unwrap_or_default()
124    }
125}
126impl ::aws_types::request_id::RequestId for GetIntentOutput {
127    fn request_id(&self) -> Option<&str> {
128        self._request_id.as_deref()
129    }
130}
131impl GetIntentOutput {
132    /// Creates a new builder-style object to manufacture [`GetIntentOutput`](crate::operation::get_intent::GetIntentOutput).
133    pub fn builder() -> crate::operation::get_intent::builders::GetIntentOutputBuilder {
134        crate::operation::get_intent::builders::GetIntentOutputBuilder::default()
135    }
136}
137
138/// A builder for [`GetIntentOutput`](crate::operation::get_intent::GetIntentOutput).
139#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
140#[non_exhaustive]
141pub struct GetIntentOutputBuilder {
142    pub(crate) name: ::std::option::Option<::std::string::String>,
143    pub(crate) description: ::std::option::Option<::std::string::String>,
144    pub(crate) slots: ::std::option::Option<::std::vec::Vec<crate::types::Slot>>,
145    pub(crate) sample_utterances: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
146    pub(crate) confirmation_prompt: ::std::option::Option<crate::types::Prompt>,
147    pub(crate) rejection_statement: ::std::option::Option<crate::types::Statement>,
148    pub(crate) follow_up_prompt: ::std::option::Option<crate::types::FollowUpPrompt>,
149    pub(crate) conclusion_statement: ::std::option::Option<crate::types::Statement>,
150    pub(crate) dialog_code_hook: ::std::option::Option<crate::types::CodeHook>,
151    pub(crate) fulfillment_activity: ::std::option::Option<crate::types::FulfillmentActivity>,
152    pub(crate) parent_intent_signature: ::std::option::Option<::std::string::String>,
153    pub(crate) last_updated_date: ::std::option::Option<::aws_smithy_types::DateTime>,
154    pub(crate) created_date: ::std::option::Option<::aws_smithy_types::DateTime>,
155    pub(crate) version: ::std::option::Option<::std::string::String>,
156    pub(crate) checksum: ::std::option::Option<::std::string::String>,
157    pub(crate) kendra_configuration: ::std::option::Option<crate::types::KendraConfiguration>,
158    pub(crate) input_contexts: ::std::option::Option<::std::vec::Vec<crate::types::InputContext>>,
159    pub(crate) output_contexts: ::std::option::Option<::std::vec::Vec<crate::types::OutputContext>>,
160    _request_id: Option<String>,
161}
162impl GetIntentOutputBuilder {
163    /// <p>The name of the intent.</p>
164    pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
165        self.name = ::std::option::Option::Some(input.into());
166        self
167    }
168    /// <p>The name of the intent.</p>
169    pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
170        self.name = input;
171        self
172    }
173    /// <p>The name of the intent.</p>
174    pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
175        &self.name
176    }
177    /// <p>A description of the intent.</p>
178    pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
179        self.description = ::std::option::Option::Some(input.into());
180        self
181    }
182    /// <p>A description of the intent.</p>
183    pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
184        self.description = input;
185        self
186    }
187    /// <p>A description of the intent.</p>
188    pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
189        &self.description
190    }
191    /// Appends an item to `slots`.
192    ///
193    /// To override the contents of this collection use [`set_slots`](Self::set_slots).
194    ///
195    /// <p>An array of intent slots configured for the intent.</p>
196    pub fn slots(mut self, input: crate::types::Slot) -> Self {
197        let mut v = self.slots.unwrap_or_default();
198        v.push(input);
199        self.slots = ::std::option::Option::Some(v);
200        self
201    }
202    /// <p>An array of intent slots configured for the intent.</p>
203    pub fn set_slots(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Slot>>) -> Self {
204        self.slots = input;
205        self
206    }
207    /// <p>An array of intent slots configured for the intent.</p>
208    pub fn get_slots(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Slot>> {
209        &self.slots
210    }
211    /// Appends an item to `sample_utterances`.
212    ///
213    /// To override the contents of this collection use [`set_sample_utterances`](Self::set_sample_utterances).
214    ///
215    /// <p>An array of sample utterances configured for the intent.</p>
216    pub fn sample_utterances(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
217        let mut v = self.sample_utterances.unwrap_or_default();
218        v.push(input.into());
219        self.sample_utterances = ::std::option::Option::Some(v);
220        self
221    }
222    /// <p>An array of sample utterances configured for the intent.</p>
223    pub fn set_sample_utterances(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
224        self.sample_utterances = input;
225        self
226    }
227    /// <p>An array of sample utterances configured for the intent.</p>
228    pub fn get_sample_utterances(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
229        &self.sample_utterances
230    }
231    /// <p>If defined in the bot, Amazon Lex uses prompt to confirm the intent before fulfilling the user's request. For more information, see <code>PutIntent</code>.</p>
232    pub fn confirmation_prompt(mut self, input: crate::types::Prompt) -> Self {
233        self.confirmation_prompt = ::std::option::Option::Some(input);
234        self
235    }
236    /// <p>If defined in the bot, Amazon Lex uses prompt to confirm the intent before fulfilling the user's request. For more information, see <code>PutIntent</code>.</p>
237    pub fn set_confirmation_prompt(mut self, input: ::std::option::Option<crate::types::Prompt>) -> Self {
238        self.confirmation_prompt = input;
239        self
240    }
241    /// <p>If defined in the bot, Amazon Lex uses prompt to confirm the intent before fulfilling the user's request. For more information, see <code>PutIntent</code>.</p>
242    pub fn get_confirmation_prompt(&self) -> &::std::option::Option<crate::types::Prompt> {
243        &self.confirmation_prompt
244    }
245    /// <p>If the user answers "no" to the question defined in <code>confirmationPrompt</code>, Amazon Lex responds with this statement to acknowledge that the intent was canceled.</p>
246    pub fn rejection_statement(mut self, input: crate::types::Statement) -> Self {
247        self.rejection_statement = ::std::option::Option::Some(input);
248        self
249    }
250    /// <p>If the user answers "no" to the question defined in <code>confirmationPrompt</code>, Amazon Lex responds with this statement to acknowledge that the intent was canceled.</p>
251    pub fn set_rejection_statement(mut self, input: ::std::option::Option<crate::types::Statement>) -> Self {
252        self.rejection_statement = input;
253        self
254    }
255    /// <p>If the user answers "no" to the question defined in <code>confirmationPrompt</code>, Amazon Lex responds with this statement to acknowledge that the intent was canceled.</p>
256    pub fn get_rejection_statement(&self) -> &::std::option::Option<crate::types::Statement> {
257        &self.rejection_statement
258    }
259    /// <p>If defined in the bot, Amazon Lex uses this prompt to solicit additional user activity after the intent is fulfilled. For more information, see <code>PutIntent</code>.</p>
260    pub fn follow_up_prompt(mut self, input: crate::types::FollowUpPrompt) -> Self {
261        self.follow_up_prompt = ::std::option::Option::Some(input);
262        self
263    }
264    /// <p>If defined in the bot, Amazon Lex uses this prompt to solicit additional user activity after the intent is fulfilled. For more information, see <code>PutIntent</code>.</p>
265    pub fn set_follow_up_prompt(mut self, input: ::std::option::Option<crate::types::FollowUpPrompt>) -> Self {
266        self.follow_up_prompt = input;
267        self
268    }
269    /// <p>If defined in the bot, Amazon Lex uses this prompt to solicit additional user activity after the intent is fulfilled. For more information, see <code>PutIntent</code>.</p>
270    pub fn get_follow_up_prompt(&self) -> &::std::option::Option<crate::types::FollowUpPrompt> {
271        &self.follow_up_prompt
272    }
273    /// <p>After the Lambda function specified in the <code>fulfillmentActivity</code> element fulfills the intent, Amazon Lex conveys this statement to the user.</p>
274    pub fn conclusion_statement(mut self, input: crate::types::Statement) -> Self {
275        self.conclusion_statement = ::std::option::Option::Some(input);
276        self
277    }
278    /// <p>After the Lambda function specified in the <code>fulfillmentActivity</code> element fulfills the intent, Amazon Lex conveys this statement to the user.</p>
279    pub fn set_conclusion_statement(mut self, input: ::std::option::Option<crate::types::Statement>) -> Self {
280        self.conclusion_statement = input;
281        self
282    }
283    /// <p>After the Lambda function specified in the <code>fulfillmentActivity</code> element fulfills the intent, Amazon Lex conveys this statement to the user.</p>
284    pub fn get_conclusion_statement(&self) -> &::std::option::Option<crate::types::Statement> {
285        &self.conclusion_statement
286    }
287    /// <p>If defined in the bot, Amazon Amazon Lex invokes this Lambda function for each user input. For more information, see <code>PutIntent</code>.</p>
288    pub fn dialog_code_hook(mut self, input: crate::types::CodeHook) -> Self {
289        self.dialog_code_hook = ::std::option::Option::Some(input);
290        self
291    }
292    /// <p>If defined in the bot, Amazon Amazon Lex invokes this Lambda function for each user input. For more information, see <code>PutIntent</code>.</p>
293    pub fn set_dialog_code_hook(mut self, input: ::std::option::Option<crate::types::CodeHook>) -> Self {
294        self.dialog_code_hook = input;
295        self
296    }
297    /// <p>If defined in the bot, Amazon Amazon Lex invokes this Lambda function for each user input. For more information, see <code>PutIntent</code>.</p>
298    pub fn get_dialog_code_hook(&self) -> &::std::option::Option<crate::types::CodeHook> {
299        &self.dialog_code_hook
300    }
301    /// <p>Describes how the intent is fulfilled. For more information, see <code>PutIntent</code>.</p>
302    pub fn fulfillment_activity(mut self, input: crate::types::FulfillmentActivity) -> Self {
303        self.fulfillment_activity = ::std::option::Option::Some(input);
304        self
305    }
306    /// <p>Describes how the intent is fulfilled. For more information, see <code>PutIntent</code>.</p>
307    pub fn set_fulfillment_activity(mut self, input: ::std::option::Option<crate::types::FulfillmentActivity>) -> Self {
308        self.fulfillment_activity = input;
309        self
310    }
311    /// <p>Describes how the intent is fulfilled. For more information, see <code>PutIntent</code>.</p>
312    pub fn get_fulfillment_activity(&self) -> &::std::option::Option<crate::types::FulfillmentActivity> {
313        &self.fulfillment_activity
314    }
315    /// <p>A unique identifier for a built-in intent.</p>
316    pub fn parent_intent_signature(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
317        self.parent_intent_signature = ::std::option::Option::Some(input.into());
318        self
319    }
320    /// <p>A unique identifier for a built-in intent.</p>
321    pub fn set_parent_intent_signature(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
322        self.parent_intent_signature = input;
323        self
324    }
325    /// <p>A unique identifier for a built-in intent.</p>
326    pub fn get_parent_intent_signature(&self) -> &::std::option::Option<::std::string::String> {
327        &self.parent_intent_signature
328    }
329    /// <p>The date that the intent was updated. When you create a resource, the creation date and the last updated date are the same.</p>
330    pub fn last_updated_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
331        self.last_updated_date = ::std::option::Option::Some(input);
332        self
333    }
334    /// <p>The date that the intent was updated. When you create a resource, the creation date and the last updated date are the same.</p>
335    pub fn set_last_updated_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
336        self.last_updated_date = input;
337        self
338    }
339    /// <p>The date that the intent was updated. When you create a resource, the creation date and the last updated date are the same.</p>
340    pub fn get_last_updated_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
341        &self.last_updated_date
342    }
343    /// <p>The date that the intent was created.</p>
344    pub fn created_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
345        self.created_date = ::std::option::Option::Some(input);
346        self
347    }
348    /// <p>The date that the intent was created.</p>
349    pub fn set_created_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
350        self.created_date = input;
351        self
352    }
353    /// <p>The date that the intent was created.</p>
354    pub fn get_created_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
355        &self.created_date
356    }
357    /// <p>The version of the intent.</p>
358    pub fn version(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
359        self.version = ::std::option::Option::Some(input.into());
360        self
361    }
362    /// <p>The version of the intent.</p>
363    pub fn set_version(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
364        self.version = input;
365        self
366    }
367    /// <p>The version of the intent.</p>
368    pub fn get_version(&self) -> &::std::option::Option<::std::string::String> {
369        &self.version
370    }
371    /// <p>Checksum of the intent.</p>
372    pub fn checksum(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
373        self.checksum = ::std::option::Option::Some(input.into());
374        self
375    }
376    /// <p>Checksum of the intent.</p>
377    pub fn set_checksum(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
378        self.checksum = input;
379        self
380    }
381    /// <p>Checksum of the intent.</p>
382    pub fn get_checksum(&self) -> &::std::option::Option<::std::string::String> {
383        &self.checksum
384    }
385    /// <p>Configuration information, if any, to connect to an Amazon Kendra index with the <code>AMAZON.KendraSearchIntent</code> intent.</p>
386    pub fn kendra_configuration(mut self, input: crate::types::KendraConfiguration) -> Self {
387        self.kendra_configuration = ::std::option::Option::Some(input);
388        self
389    }
390    /// <p>Configuration information, if any, to connect to an Amazon Kendra index with the <code>AMAZON.KendraSearchIntent</code> intent.</p>
391    pub fn set_kendra_configuration(mut self, input: ::std::option::Option<crate::types::KendraConfiguration>) -> Self {
392        self.kendra_configuration = input;
393        self
394    }
395    /// <p>Configuration information, if any, to connect to an Amazon Kendra index with the <code>AMAZON.KendraSearchIntent</code> intent.</p>
396    pub fn get_kendra_configuration(&self) -> &::std::option::Option<crate::types::KendraConfiguration> {
397        &self.kendra_configuration
398    }
399    /// Appends an item to `input_contexts`.
400    ///
401    /// To override the contents of this collection use [`set_input_contexts`](Self::set_input_contexts).
402    ///
403    /// <p>An array of <code>InputContext</code> objects that lists the contexts that must be active for Amazon Lex to choose the intent in a conversation with the user.</p>
404    pub fn input_contexts(mut self, input: crate::types::InputContext) -> Self {
405        let mut v = self.input_contexts.unwrap_or_default();
406        v.push(input);
407        self.input_contexts = ::std::option::Option::Some(v);
408        self
409    }
410    /// <p>An array of <code>InputContext</code> objects that lists the contexts that must be active for Amazon Lex to choose the intent in a conversation with the user.</p>
411    pub fn set_input_contexts(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::InputContext>>) -> Self {
412        self.input_contexts = input;
413        self
414    }
415    /// <p>An array of <code>InputContext</code> objects that lists the contexts that must be active for Amazon Lex to choose the intent in a conversation with the user.</p>
416    pub fn get_input_contexts(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::InputContext>> {
417        &self.input_contexts
418    }
419    /// Appends an item to `output_contexts`.
420    ///
421    /// To override the contents of this collection use [`set_output_contexts`](Self::set_output_contexts).
422    ///
423    /// <p>An array of <code>OutputContext</code> objects that lists the contexts that the intent activates when the intent is fulfilled.</p>
424    pub fn output_contexts(mut self, input: crate::types::OutputContext) -> Self {
425        let mut v = self.output_contexts.unwrap_or_default();
426        v.push(input);
427        self.output_contexts = ::std::option::Option::Some(v);
428        self
429    }
430    /// <p>An array of <code>OutputContext</code> objects that lists the contexts that the intent activates when the intent is fulfilled.</p>
431    pub fn set_output_contexts(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::OutputContext>>) -> Self {
432        self.output_contexts = input;
433        self
434    }
435    /// <p>An array of <code>OutputContext</code> objects that lists the contexts that the intent activates when the intent is fulfilled.</p>
436    pub fn get_output_contexts(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::OutputContext>> {
437        &self.output_contexts
438    }
439    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
440        self._request_id = Some(request_id.into());
441        self
442    }
443
444    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
445        self._request_id = request_id;
446        self
447    }
448    /// Consumes the builder and constructs a [`GetIntentOutput`](crate::operation::get_intent::GetIntentOutput).
449    pub fn build(self) -> crate::operation::get_intent::GetIntentOutput {
450        crate::operation::get_intent::GetIntentOutput {
451            name: self.name,
452            description: self.description,
453            slots: self.slots,
454            sample_utterances: self.sample_utterances,
455            confirmation_prompt: self.confirmation_prompt,
456            rejection_statement: self.rejection_statement,
457            follow_up_prompt: self.follow_up_prompt,
458            conclusion_statement: self.conclusion_statement,
459            dialog_code_hook: self.dialog_code_hook,
460            fulfillment_activity: self.fulfillment_activity,
461            parent_intent_signature: self.parent_intent_signature,
462            last_updated_date: self.last_updated_date,
463            created_date: self.created_date,
464            version: self.version,
465            checksum: self.checksum,
466            kendra_configuration: self.kendra_configuration,
467            input_contexts: self.input_contexts,
468            output_contexts: self.output_contexts,
469            _request_id: self._request_id,
470        }
471    }
472}