1 /**
2  * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  * SPDX-License-Identifier: Apache-2.0.
4  */
5 
6 #pragma once
7 #include <aws/lexv2-models/LexModelsV2_EXPORTS.h>
8 #include <aws/lexv2-models/LexModelsV2Request.h>
9 #include <aws/core/utils/memory/stl/AWSString.h>
10 #include <aws/lexv2-models/model/SlotValueElicitationSetting.h>
11 #include <aws/lexv2-models/model/ObfuscationSetting.h>
12 #include <aws/lexv2-models/model/MultipleValuesSetting.h>
13 #include <utility>
14 
15 namespace Aws
16 {
17 namespace LexModelsV2
18 {
19 namespace Model
20 {
21 
22   /**
23    */
24   class AWS_LEXMODELSV2_API CreateSlotRequest : public LexModelsV2Request
25   {
26   public:
27     CreateSlotRequest();
28 
29     // Service request name is the Operation name which will send this request out,
30     // each operation should has unique request name, so that we can get operation's name from this request.
31     // Note: this is not true for response, multiple operations may have the same response name,
32     // so we can not get operation's name from response.
GetServiceRequestName()33     inline virtual const char* GetServiceRequestName() const override { return "CreateSlot"; }
34 
35     Aws::String SerializePayload() const override;
36 
37 
38     /**
39      * <p>The name of the slot. Slot names must be unique within the bot that contains
40      * the slot.</p>
41      */
GetSlotName()42     inline const Aws::String& GetSlotName() const{ return m_slotName; }
43 
44     /**
45      * <p>The name of the slot. Slot names must be unique within the bot that contains
46      * the slot.</p>
47      */
SlotNameHasBeenSet()48     inline bool SlotNameHasBeenSet() const { return m_slotNameHasBeenSet; }
49 
50     /**
51      * <p>The name of the slot. Slot names must be unique within the bot that contains
52      * the slot.</p>
53      */
SetSlotName(const Aws::String & value)54     inline void SetSlotName(const Aws::String& value) { m_slotNameHasBeenSet = true; m_slotName = value; }
55 
56     /**
57      * <p>The name of the slot. Slot names must be unique within the bot that contains
58      * the slot.</p>
59      */
SetSlotName(Aws::String && value)60     inline void SetSlotName(Aws::String&& value) { m_slotNameHasBeenSet = true; m_slotName = std::move(value); }
61 
62     /**
63      * <p>The name of the slot. Slot names must be unique within the bot that contains
64      * the slot.</p>
65      */
SetSlotName(const char * value)66     inline void SetSlotName(const char* value) { m_slotNameHasBeenSet = true; m_slotName.assign(value); }
67 
68     /**
69      * <p>The name of the slot. Slot names must be unique within the bot that contains
70      * the slot.</p>
71      */
WithSlotName(const Aws::String & value)72     inline CreateSlotRequest& WithSlotName(const Aws::String& value) { SetSlotName(value); return *this;}
73 
74     /**
75      * <p>The name of the slot. Slot names must be unique within the bot that contains
76      * the slot.</p>
77      */
WithSlotName(Aws::String && value)78     inline CreateSlotRequest& WithSlotName(Aws::String&& value) { SetSlotName(std::move(value)); return *this;}
79 
80     /**
81      * <p>The name of the slot. Slot names must be unique within the bot that contains
82      * the slot.</p>
83      */
WithSlotName(const char * value)84     inline CreateSlotRequest& WithSlotName(const char* value) { SetSlotName(value); return *this;}
85 
86 
87     /**
88      * <p>A description of the slot. Use this to help identify the slot in lists.</p>
89      */
GetDescription()90     inline const Aws::String& GetDescription() const{ return m_description; }
91 
92     /**
93      * <p>A description of the slot. Use this to help identify the slot in lists.</p>
94      */
DescriptionHasBeenSet()95     inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
96 
97     /**
98      * <p>A description of the slot. Use this to help identify the slot in lists.</p>
99      */
SetDescription(const Aws::String & value)100     inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
101 
102     /**
103      * <p>A description of the slot. Use this to help identify the slot in lists.</p>
104      */
SetDescription(Aws::String && value)105     inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
106 
107     /**
108      * <p>A description of the slot. Use this to help identify the slot in lists.</p>
109      */
SetDescription(const char * value)110     inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
111 
112     /**
113      * <p>A description of the slot. Use this to help identify the slot in lists.</p>
114      */
WithDescription(const Aws::String & value)115     inline CreateSlotRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
116 
117     /**
118      * <p>A description of the slot. Use this to help identify the slot in lists.</p>
119      */
WithDescription(Aws::String && value)120     inline CreateSlotRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
121 
122     /**
123      * <p>A description of the slot. Use this to help identify the slot in lists.</p>
124      */
WithDescription(const char * value)125     inline CreateSlotRequest& WithDescription(const char* value) { SetDescription(value); return *this;}
126 
127 
128     /**
129      * <p>The unique identifier for the slot type associated with this slot. The slot
130      * type determines the values that can be entered into the slot.</p>
131      */
GetSlotTypeId()132     inline const Aws::String& GetSlotTypeId() const{ return m_slotTypeId; }
133 
134     /**
135      * <p>The unique identifier for the slot type associated with this slot. The slot
136      * type determines the values that can be entered into the slot.</p>
137      */
SlotTypeIdHasBeenSet()138     inline bool SlotTypeIdHasBeenSet() const { return m_slotTypeIdHasBeenSet; }
139 
140     /**
141      * <p>The unique identifier for the slot type associated with this slot. The slot
142      * type determines the values that can be entered into the slot.</p>
143      */
SetSlotTypeId(const Aws::String & value)144     inline void SetSlotTypeId(const Aws::String& value) { m_slotTypeIdHasBeenSet = true; m_slotTypeId = value; }
145 
146     /**
147      * <p>The unique identifier for the slot type associated with this slot. The slot
148      * type determines the values that can be entered into the slot.</p>
149      */
SetSlotTypeId(Aws::String && value)150     inline void SetSlotTypeId(Aws::String&& value) { m_slotTypeIdHasBeenSet = true; m_slotTypeId = std::move(value); }
151 
152     /**
153      * <p>The unique identifier for the slot type associated with this slot. The slot
154      * type determines the values that can be entered into the slot.</p>
155      */
SetSlotTypeId(const char * value)156     inline void SetSlotTypeId(const char* value) { m_slotTypeIdHasBeenSet = true; m_slotTypeId.assign(value); }
157 
158     /**
159      * <p>The unique identifier for the slot type associated with this slot. The slot
160      * type determines the values that can be entered into the slot.</p>
161      */
WithSlotTypeId(const Aws::String & value)162     inline CreateSlotRequest& WithSlotTypeId(const Aws::String& value) { SetSlotTypeId(value); return *this;}
163 
164     /**
165      * <p>The unique identifier for the slot type associated with this slot. The slot
166      * type determines the values that can be entered into the slot.</p>
167      */
WithSlotTypeId(Aws::String && value)168     inline CreateSlotRequest& WithSlotTypeId(Aws::String&& value) { SetSlotTypeId(std::move(value)); return *this;}
169 
170     /**
171      * <p>The unique identifier for the slot type associated with this slot. The slot
172      * type determines the values that can be entered into the slot.</p>
173      */
WithSlotTypeId(const char * value)174     inline CreateSlotRequest& WithSlotTypeId(const char* value) { SetSlotTypeId(value); return *this;}
175 
176 
177     /**
178      * <p>Specifies prompts that Amazon Lex sends to the user to elicit a response that
179      * provides the value for the slot. </p>
180      */
GetValueElicitationSetting()181     inline const SlotValueElicitationSetting& GetValueElicitationSetting() const{ return m_valueElicitationSetting; }
182 
183     /**
184      * <p>Specifies prompts that Amazon Lex sends to the user to elicit a response that
185      * provides the value for the slot. </p>
186      */
ValueElicitationSettingHasBeenSet()187     inline bool ValueElicitationSettingHasBeenSet() const { return m_valueElicitationSettingHasBeenSet; }
188 
189     /**
190      * <p>Specifies prompts that Amazon Lex sends to the user to elicit a response that
191      * provides the value for the slot. </p>
192      */
SetValueElicitationSetting(const SlotValueElicitationSetting & value)193     inline void SetValueElicitationSetting(const SlotValueElicitationSetting& value) { m_valueElicitationSettingHasBeenSet = true; m_valueElicitationSetting = value; }
194 
195     /**
196      * <p>Specifies prompts that Amazon Lex sends to the user to elicit a response that
197      * provides the value for the slot. </p>
198      */
SetValueElicitationSetting(SlotValueElicitationSetting && value)199     inline void SetValueElicitationSetting(SlotValueElicitationSetting&& value) { m_valueElicitationSettingHasBeenSet = true; m_valueElicitationSetting = std::move(value); }
200 
201     /**
202      * <p>Specifies prompts that Amazon Lex sends to the user to elicit a response that
203      * provides the value for the slot. </p>
204      */
WithValueElicitationSetting(const SlotValueElicitationSetting & value)205     inline CreateSlotRequest& WithValueElicitationSetting(const SlotValueElicitationSetting& value) { SetValueElicitationSetting(value); return *this;}
206 
207     /**
208      * <p>Specifies prompts that Amazon Lex sends to the user to elicit a response that
209      * provides the value for the slot. </p>
210      */
WithValueElicitationSetting(SlotValueElicitationSetting && value)211     inline CreateSlotRequest& WithValueElicitationSetting(SlotValueElicitationSetting&& value) { SetValueElicitationSetting(std::move(value)); return *this;}
212 
213 
214     /**
215      * <p>Determines how slot values are used in Amazon CloudWatch logs. If the value
216      * of the <code>obfuscationSetting</code> parameter is
217      * <code>DefaultObfuscation</code>, slot values are obfuscated in the log output.
218      * If the value is <code>None</code>, the actual value is present in the log
219      * output.</p> <p>The default is to obfuscate values in the CloudWatch logs.</p>
220      */
GetObfuscationSetting()221     inline const ObfuscationSetting& GetObfuscationSetting() const{ return m_obfuscationSetting; }
222 
223     /**
224      * <p>Determines how slot values are used in Amazon CloudWatch logs. If the value
225      * of the <code>obfuscationSetting</code> parameter is
226      * <code>DefaultObfuscation</code>, slot values are obfuscated in the log output.
227      * If the value is <code>None</code>, the actual value is present in the log
228      * output.</p> <p>The default is to obfuscate values in the CloudWatch logs.</p>
229      */
ObfuscationSettingHasBeenSet()230     inline bool ObfuscationSettingHasBeenSet() const { return m_obfuscationSettingHasBeenSet; }
231 
232     /**
233      * <p>Determines how slot values are used in Amazon CloudWatch logs. If the value
234      * of the <code>obfuscationSetting</code> parameter is
235      * <code>DefaultObfuscation</code>, slot values are obfuscated in the log output.
236      * If the value is <code>None</code>, the actual value is present in the log
237      * output.</p> <p>The default is to obfuscate values in the CloudWatch logs.</p>
238      */
SetObfuscationSetting(const ObfuscationSetting & value)239     inline void SetObfuscationSetting(const ObfuscationSetting& value) { m_obfuscationSettingHasBeenSet = true; m_obfuscationSetting = value; }
240 
241     /**
242      * <p>Determines how slot values are used in Amazon CloudWatch logs. If the value
243      * of the <code>obfuscationSetting</code> parameter is
244      * <code>DefaultObfuscation</code>, slot values are obfuscated in the log output.
245      * If the value is <code>None</code>, the actual value is present in the log
246      * output.</p> <p>The default is to obfuscate values in the CloudWatch logs.</p>
247      */
SetObfuscationSetting(ObfuscationSetting && value)248     inline void SetObfuscationSetting(ObfuscationSetting&& value) { m_obfuscationSettingHasBeenSet = true; m_obfuscationSetting = std::move(value); }
249 
250     /**
251      * <p>Determines how slot values are used in Amazon CloudWatch logs. If the value
252      * of the <code>obfuscationSetting</code> parameter is
253      * <code>DefaultObfuscation</code>, slot values are obfuscated in the log output.
254      * If the value is <code>None</code>, the actual value is present in the log
255      * output.</p> <p>The default is to obfuscate values in the CloudWatch logs.</p>
256      */
WithObfuscationSetting(const ObfuscationSetting & value)257     inline CreateSlotRequest& WithObfuscationSetting(const ObfuscationSetting& value) { SetObfuscationSetting(value); return *this;}
258 
259     /**
260      * <p>Determines how slot values are used in Amazon CloudWatch logs. If the value
261      * of the <code>obfuscationSetting</code> parameter is
262      * <code>DefaultObfuscation</code>, slot values are obfuscated in the log output.
263      * If the value is <code>None</code>, the actual value is present in the log
264      * output.</p> <p>The default is to obfuscate values in the CloudWatch logs.</p>
265      */
WithObfuscationSetting(ObfuscationSetting && value)266     inline CreateSlotRequest& WithObfuscationSetting(ObfuscationSetting&& value) { SetObfuscationSetting(std::move(value)); return *this;}
267 
268 
269     /**
270      * <p>The identifier of the bot associated with the slot.</p>
271      */
GetBotId()272     inline const Aws::String& GetBotId() const{ return m_botId; }
273 
274     /**
275      * <p>The identifier of the bot associated with the slot.</p>
276      */
BotIdHasBeenSet()277     inline bool BotIdHasBeenSet() const { return m_botIdHasBeenSet; }
278 
279     /**
280      * <p>The identifier of the bot associated with the slot.</p>
281      */
SetBotId(const Aws::String & value)282     inline void SetBotId(const Aws::String& value) { m_botIdHasBeenSet = true; m_botId = value; }
283 
284     /**
285      * <p>The identifier of the bot associated with the slot.</p>
286      */
SetBotId(Aws::String && value)287     inline void SetBotId(Aws::String&& value) { m_botIdHasBeenSet = true; m_botId = std::move(value); }
288 
289     /**
290      * <p>The identifier of the bot associated with the slot.</p>
291      */
SetBotId(const char * value)292     inline void SetBotId(const char* value) { m_botIdHasBeenSet = true; m_botId.assign(value); }
293 
294     /**
295      * <p>The identifier of the bot associated with the slot.</p>
296      */
WithBotId(const Aws::String & value)297     inline CreateSlotRequest& WithBotId(const Aws::String& value) { SetBotId(value); return *this;}
298 
299     /**
300      * <p>The identifier of the bot associated with the slot.</p>
301      */
WithBotId(Aws::String && value)302     inline CreateSlotRequest& WithBotId(Aws::String&& value) { SetBotId(std::move(value)); return *this;}
303 
304     /**
305      * <p>The identifier of the bot associated with the slot.</p>
306      */
WithBotId(const char * value)307     inline CreateSlotRequest& WithBotId(const char* value) { SetBotId(value); return *this;}
308 
309 
310     /**
311      * <p>The version of the bot associated with the slot.</p>
312      */
GetBotVersion()313     inline const Aws::String& GetBotVersion() const{ return m_botVersion; }
314 
315     /**
316      * <p>The version of the bot associated with the slot.</p>
317      */
BotVersionHasBeenSet()318     inline bool BotVersionHasBeenSet() const { return m_botVersionHasBeenSet; }
319 
320     /**
321      * <p>The version of the bot associated with the slot.</p>
322      */
SetBotVersion(const Aws::String & value)323     inline void SetBotVersion(const Aws::String& value) { m_botVersionHasBeenSet = true; m_botVersion = value; }
324 
325     /**
326      * <p>The version of the bot associated with the slot.</p>
327      */
SetBotVersion(Aws::String && value)328     inline void SetBotVersion(Aws::String&& value) { m_botVersionHasBeenSet = true; m_botVersion = std::move(value); }
329 
330     /**
331      * <p>The version of the bot associated with the slot.</p>
332      */
SetBotVersion(const char * value)333     inline void SetBotVersion(const char* value) { m_botVersionHasBeenSet = true; m_botVersion.assign(value); }
334 
335     /**
336      * <p>The version of the bot associated with the slot.</p>
337      */
WithBotVersion(const Aws::String & value)338     inline CreateSlotRequest& WithBotVersion(const Aws::String& value) { SetBotVersion(value); return *this;}
339 
340     /**
341      * <p>The version of the bot associated with the slot.</p>
342      */
WithBotVersion(Aws::String && value)343     inline CreateSlotRequest& WithBotVersion(Aws::String&& value) { SetBotVersion(std::move(value)); return *this;}
344 
345     /**
346      * <p>The version of the bot associated with the slot.</p>
347      */
WithBotVersion(const char * value)348     inline CreateSlotRequest& WithBotVersion(const char* value) { SetBotVersion(value); return *this;}
349 
350 
351     /**
352      * <p>The identifier of the language and locale that the slot will be used in. The
353      * string must match one of the supported locales. All of the bots, intents, slot
354      * types used by the slot must have the same locale. For more information, see <a
355      * href="https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html">Supported
356      * languages</a>.</p>
357      */
GetLocaleId()358     inline const Aws::String& GetLocaleId() const{ return m_localeId; }
359 
360     /**
361      * <p>The identifier of the language and locale that the slot will be used in. The
362      * string must match one of the supported locales. All of the bots, intents, slot
363      * types used by the slot must have the same locale. For more information, see <a
364      * href="https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html">Supported
365      * languages</a>.</p>
366      */
LocaleIdHasBeenSet()367     inline bool LocaleIdHasBeenSet() const { return m_localeIdHasBeenSet; }
368 
369     /**
370      * <p>The identifier of the language and locale that the slot will be used in. The
371      * string must match one of the supported locales. All of the bots, intents, slot
372      * types used by the slot must have the same locale. For more information, see <a
373      * href="https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html">Supported
374      * languages</a>.</p>
375      */
SetLocaleId(const Aws::String & value)376     inline void SetLocaleId(const Aws::String& value) { m_localeIdHasBeenSet = true; m_localeId = value; }
377 
378     /**
379      * <p>The identifier of the language and locale that the slot will be used in. The
380      * string must match one of the supported locales. All of the bots, intents, slot
381      * types used by the slot must have the same locale. For more information, see <a
382      * href="https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html">Supported
383      * languages</a>.</p>
384      */
SetLocaleId(Aws::String && value)385     inline void SetLocaleId(Aws::String&& value) { m_localeIdHasBeenSet = true; m_localeId = std::move(value); }
386 
387     /**
388      * <p>The identifier of the language and locale that the slot will be used in. The
389      * string must match one of the supported locales. All of the bots, intents, slot
390      * types used by the slot must have the same locale. For more information, see <a
391      * href="https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html">Supported
392      * languages</a>.</p>
393      */
SetLocaleId(const char * value)394     inline void SetLocaleId(const char* value) { m_localeIdHasBeenSet = true; m_localeId.assign(value); }
395 
396     /**
397      * <p>The identifier of the language and locale that the slot will be used in. The
398      * string must match one of the supported locales. All of the bots, intents, slot
399      * types used by the slot must have the same locale. For more information, see <a
400      * href="https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html">Supported
401      * languages</a>.</p>
402      */
WithLocaleId(const Aws::String & value)403     inline CreateSlotRequest& WithLocaleId(const Aws::String& value) { SetLocaleId(value); return *this;}
404 
405     /**
406      * <p>The identifier of the language and locale that the slot will be used in. The
407      * string must match one of the supported locales. All of the bots, intents, slot
408      * types used by the slot must have the same locale. For more information, see <a
409      * href="https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html">Supported
410      * languages</a>.</p>
411      */
WithLocaleId(Aws::String && value)412     inline CreateSlotRequest& WithLocaleId(Aws::String&& value) { SetLocaleId(std::move(value)); return *this;}
413 
414     /**
415      * <p>The identifier of the language and locale that the slot will be used in. The
416      * string must match one of the supported locales. All of the bots, intents, slot
417      * types used by the slot must have the same locale. For more information, see <a
418      * href="https://docs.aws.amazon.com/lexv2/latest/dg/how-languages.html">Supported
419      * languages</a>.</p>
420      */
WithLocaleId(const char * value)421     inline CreateSlotRequest& WithLocaleId(const char* value) { SetLocaleId(value); return *this;}
422 
423 
424     /**
425      * <p>The identifier of the intent that contains the slot.</p>
426      */
GetIntentId()427     inline const Aws::String& GetIntentId() const{ return m_intentId; }
428 
429     /**
430      * <p>The identifier of the intent that contains the slot.</p>
431      */
IntentIdHasBeenSet()432     inline bool IntentIdHasBeenSet() const { return m_intentIdHasBeenSet; }
433 
434     /**
435      * <p>The identifier of the intent that contains the slot.</p>
436      */
SetIntentId(const Aws::String & value)437     inline void SetIntentId(const Aws::String& value) { m_intentIdHasBeenSet = true; m_intentId = value; }
438 
439     /**
440      * <p>The identifier of the intent that contains the slot.</p>
441      */
SetIntentId(Aws::String && value)442     inline void SetIntentId(Aws::String&& value) { m_intentIdHasBeenSet = true; m_intentId = std::move(value); }
443 
444     /**
445      * <p>The identifier of the intent that contains the slot.</p>
446      */
SetIntentId(const char * value)447     inline void SetIntentId(const char* value) { m_intentIdHasBeenSet = true; m_intentId.assign(value); }
448 
449     /**
450      * <p>The identifier of the intent that contains the slot.</p>
451      */
WithIntentId(const Aws::String & value)452     inline CreateSlotRequest& WithIntentId(const Aws::String& value) { SetIntentId(value); return *this;}
453 
454     /**
455      * <p>The identifier of the intent that contains the slot.</p>
456      */
WithIntentId(Aws::String && value)457     inline CreateSlotRequest& WithIntentId(Aws::String&& value) { SetIntentId(std::move(value)); return *this;}
458 
459     /**
460      * <p>The identifier of the intent that contains the slot.</p>
461      */
WithIntentId(const char * value)462     inline CreateSlotRequest& WithIntentId(const char* value) { SetIntentId(value); return *this;}
463 
464 
465     /**
466      * <p>Indicates whether the slot returns multiple values in one response.
467      * Multi-value slots are only available in the en-US locale. If you set this value
468      * to <code>true</code> in any other locale, Amazon Lex throws a
469      * <code>ValidationException</code>. </p> <p>If the
470      * <code>multipleValuesSetting</code> is not set, the default value is
471      * <code>false</code>.</p>
472      */
GetMultipleValuesSetting()473     inline const MultipleValuesSetting& GetMultipleValuesSetting() const{ return m_multipleValuesSetting; }
474 
475     /**
476      * <p>Indicates whether the slot returns multiple values in one response.
477      * Multi-value slots are only available in the en-US locale. If you set this value
478      * to <code>true</code> in any other locale, Amazon Lex throws a
479      * <code>ValidationException</code>. </p> <p>If the
480      * <code>multipleValuesSetting</code> is not set, the default value is
481      * <code>false</code>.</p>
482      */
MultipleValuesSettingHasBeenSet()483     inline bool MultipleValuesSettingHasBeenSet() const { return m_multipleValuesSettingHasBeenSet; }
484 
485     /**
486      * <p>Indicates whether the slot returns multiple values in one response.
487      * Multi-value slots are only available in the en-US locale. If you set this value
488      * to <code>true</code> in any other locale, Amazon Lex throws a
489      * <code>ValidationException</code>. </p> <p>If the
490      * <code>multipleValuesSetting</code> is not set, the default value is
491      * <code>false</code>.</p>
492      */
SetMultipleValuesSetting(const MultipleValuesSetting & value)493     inline void SetMultipleValuesSetting(const MultipleValuesSetting& value) { m_multipleValuesSettingHasBeenSet = true; m_multipleValuesSetting = value; }
494 
495     /**
496      * <p>Indicates whether the slot returns multiple values in one response.
497      * Multi-value slots are only available in the en-US locale. If you set this value
498      * to <code>true</code> in any other locale, Amazon Lex throws a
499      * <code>ValidationException</code>. </p> <p>If the
500      * <code>multipleValuesSetting</code> is not set, the default value is
501      * <code>false</code>.</p>
502      */
SetMultipleValuesSetting(MultipleValuesSetting && value)503     inline void SetMultipleValuesSetting(MultipleValuesSetting&& value) { m_multipleValuesSettingHasBeenSet = true; m_multipleValuesSetting = std::move(value); }
504 
505     /**
506      * <p>Indicates whether the slot returns multiple values in one response.
507      * Multi-value slots are only available in the en-US locale. If you set this value
508      * to <code>true</code> in any other locale, Amazon Lex throws a
509      * <code>ValidationException</code>. </p> <p>If the
510      * <code>multipleValuesSetting</code> is not set, the default value is
511      * <code>false</code>.</p>
512      */
WithMultipleValuesSetting(const MultipleValuesSetting & value)513     inline CreateSlotRequest& WithMultipleValuesSetting(const MultipleValuesSetting& value) { SetMultipleValuesSetting(value); return *this;}
514 
515     /**
516      * <p>Indicates whether the slot returns multiple values in one response.
517      * Multi-value slots are only available in the en-US locale. If you set this value
518      * to <code>true</code> in any other locale, Amazon Lex throws a
519      * <code>ValidationException</code>. </p> <p>If the
520      * <code>multipleValuesSetting</code> is not set, the default value is
521      * <code>false</code>.</p>
522      */
WithMultipleValuesSetting(MultipleValuesSetting && value)523     inline CreateSlotRequest& WithMultipleValuesSetting(MultipleValuesSetting&& value) { SetMultipleValuesSetting(std::move(value)); return *this;}
524 
525   private:
526 
527     Aws::String m_slotName;
528     bool m_slotNameHasBeenSet;
529 
530     Aws::String m_description;
531     bool m_descriptionHasBeenSet;
532 
533     Aws::String m_slotTypeId;
534     bool m_slotTypeIdHasBeenSet;
535 
536     SlotValueElicitationSetting m_valueElicitationSetting;
537     bool m_valueElicitationSettingHasBeenSet;
538 
539     ObfuscationSetting m_obfuscationSetting;
540     bool m_obfuscationSettingHasBeenSet;
541 
542     Aws::String m_botId;
543     bool m_botIdHasBeenSet;
544 
545     Aws::String m_botVersion;
546     bool m_botVersionHasBeenSet;
547 
548     Aws::String m_localeId;
549     bool m_localeIdHasBeenSet;
550 
551     Aws::String m_intentId;
552     bool m_intentIdHasBeenSet;
553 
554     MultipleValuesSetting m_multipleValuesSetting;
555     bool m_multipleValuesSettingHasBeenSet;
556   };
557 
558 } // namespace Model
559 } // namespace LexModelsV2
560 } // namespace Aws
561