AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Slot.h
1
6#pragma once
7#include <aws/lex-models/LexModelBuildingService_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/lex-models/model/SlotConstraint.h>
10#include <aws/lex-models/model/Prompt.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/lex-models/model/ObfuscationSetting.h>
13#include <aws/lex-models/model/SlotDefaultValueSpec.h>
14#include <utility>
15
16namespace Aws
17{
18namespace Utils
19{
20namespace Json
21{
22 class JsonValue;
23 class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace LexModelBuildingService
27{
28namespace Model
29{
30
36 class Slot
37 {
38 public:
39 AWS_LEXMODELBUILDINGSERVICE_API Slot() = default;
40 AWS_LEXMODELBUILDINGSERVICE_API Slot(Aws::Utils::Json::JsonView jsonValue);
41 AWS_LEXMODELBUILDINGSERVICE_API Slot& operator=(Aws::Utils::Json::JsonView jsonValue);
42 AWS_LEXMODELBUILDINGSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
49 inline const Aws::String& GetName() const { return m_name; }
50 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
51 template<typename NameT = Aws::String>
52 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
53 template<typename NameT = Aws::String>
54 Slot& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
56
58
61 inline const Aws::String& GetDescription() const { return m_description; }
62 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
63 template<typename DescriptionT = Aws::String>
64 void SetDescription(DescriptionT&& value) { m_descriptionHasBeenSet = true; m_description = std::forward<DescriptionT>(value); }
65 template<typename DescriptionT = Aws::String>
66 Slot& WithDescription(DescriptionT&& value) { SetDescription(std::forward<DescriptionT>(value)); return *this;}
68
70
73 inline SlotConstraint GetSlotConstraint() const { return m_slotConstraint; }
74 inline bool SlotConstraintHasBeenSet() const { return m_slotConstraintHasBeenSet; }
75 inline void SetSlotConstraint(SlotConstraint value) { m_slotConstraintHasBeenSet = true; m_slotConstraint = value; }
76 inline Slot& WithSlotConstraint(SlotConstraint value) { SetSlotConstraint(value); return *this;}
78
80
84 inline const Aws::String& GetSlotType() const { return m_slotType; }
85 inline bool SlotTypeHasBeenSet() const { return m_slotTypeHasBeenSet; }
86 template<typename SlotTypeT = Aws::String>
87 void SetSlotType(SlotTypeT&& value) { m_slotTypeHasBeenSet = true; m_slotType = std::forward<SlotTypeT>(value); }
88 template<typename SlotTypeT = Aws::String>
89 Slot& WithSlotType(SlotTypeT&& value) { SetSlotType(std::forward<SlotTypeT>(value)); return *this;}
91
93
96 inline const Aws::String& GetSlotTypeVersion() const { return m_slotTypeVersion; }
97 inline bool SlotTypeVersionHasBeenSet() const { return m_slotTypeVersionHasBeenSet; }
98 template<typename SlotTypeVersionT = Aws::String>
99 void SetSlotTypeVersion(SlotTypeVersionT&& value) { m_slotTypeVersionHasBeenSet = true; m_slotTypeVersion = std::forward<SlotTypeVersionT>(value); }
100 template<typename SlotTypeVersionT = Aws::String>
101 Slot& WithSlotTypeVersion(SlotTypeVersionT&& value) { SetSlotTypeVersion(std::forward<SlotTypeVersionT>(value)); return *this;}
103
105
108 inline const Prompt& GetValueElicitationPrompt() const { return m_valueElicitationPrompt; }
109 inline bool ValueElicitationPromptHasBeenSet() const { return m_valueElicitationPromptHasBeenSet; }
110 template<typename ValueElicitationPromptT = Prompt>
111 void SetValueElicitationPrompt(ValueElicitationPromptT&& value) { m_valueElicitationPromptHasBeenSet = true; m_valueElicitationPrompt = std::forward<ValueElicitationPromptT>(value); }
112 template<typename ValueElicitationPromptT = Prompt>
113 Slot& WithValueElicitationPrompt(ValueElicitationPromptT&& value) { SetValueElicitationPrompt(std::forward<ValueElicitationPromptT>(value)); return *this;}
115
117
124 inline int GetPriority() const { return m_priority; }
125 inline bool PriorityHasBeenSet() const { return m_priorityHasBeenSet; }
126 inline void SetPriority(int value) { m_priorityHasBeenSet = true; m_priority = value; }
127 inline Slot& WithPriority(int value) { SetPriority(value); return *this;}
129
131
137 inline const Aws::Vector<Aws::String>& GetSampleUtterances() const { return m_sampleUtterances; }
138 inline bool SampleUtterancesHasBeenSet() const { return m_sampleUtterancesHasBeenSet; }
139 template<typename SampleUtterancesT = Aws::Vector<Aws::String>>
140 void SetSampleUtterances(SampleUtterancesT&& value) { m_sampleUtterancesHasBeenSet = true; m_sampleUtterances = std::forward<SampleUtterancesT>(value); }
141 template<typename SampleUtterancesT = Aws::Vector<Aws::String>>
142 Slot& WithSampleUtterances(SampleUtterancesT&& value) { SetSampleUtterances(std::forward<SampleUtterancesT>(value)); return *this;}
143 template<typename SampleUtterancesT = Aws::String>
144 Slot& AddSampleUtterances(SampleUtterancesT&& value) { m_sampleUtterancesHasBeenSet = true; m_sampleUtterances.emplace_back(std::forward<SampleUtterancesT>(value)); return *this; }
146
148
153 inline const Aws::String& GetResponseCard() const { return m_responseCard; }
154 inline bool ResponseCardHasBeenSet() const { return m_responseCardHasBeenSet; }
155 template<typename ResponseCardT = Aws::String>
156 void SetResponseCard(ResponseCardT&& value) { m_responseCardHasBeenSet = true; m_responseCard = std::forward<ResponseCardT>(value); }
157 template<typename ResponseCardT = Aws::String>
158 Slot& WithResponseCard(ResponseCardT&& value) { SetResponseCard(std::forward<ResponseCardT>(value)); return *this;}
160
162
170 inline ObfuscationSetting GetObfuscationSetting() const { return m_obfuscationSetting; }
171 inline bool ObfuscationSettingHasBeenSet() const { return m_obfuscationSettingHasBeenSet; }
172 inline void SetObfuscationSetting(ObfuscationSetting value) { m_obfuscationSettingHasBeenSet = true; m_obfuscationSetting = value; }
175
177
182 inline const SlotDefaultValueSpec& GetDefaultValueSpec() const { return m_defaultValueSpec; }
183 inline bool DefaultValueSpecHasBeenSet() const { return m_defaultValueSpecHasBeenSet; }
184 template<typename DefaultValueSpecT = SlotDefaultValueSpec>
185 void SetDefaultValueSpec(DefaultValueSpecT&& value) { m_defaultValueSpecHasBeenSet = true; m_defaultValueSpec = std::forward<DefaultValueSpecT>(value); }
186 template<typename DefaultValueSpecT = SlotDefaultValueSpec>
187 Slot& WithDefaultValueSpec(DefaultValueSpecT&& value) { SetDefaultValueSpec(std::forward<DefaultValueSpecT>(value)); return *this;}
189 private:
190
191 Aws::String m_name;
192 bool m_nameHasBeenSet = false;
193
194 Aws::String m_description;
195 bool m_descriptionHasBeenSet = false;
196
197 SlotConstraint m_slotConstraint{SlotConstraint::NOT_SET};
198 bool m_slotConstraintHasBeenSet = false;
199
200 Aws::String m_slotType;
201 bool m_slotTypeHasBeenSet = false;
202
203 Aws::String m_slotTypeVersion;
204 bool m_slotTypeVersionHasBeenSet = false;
205
206 Prompt m_valueElicitationPrompt;
207 bool m_valueElicitationPromptHasBeenSet = false;
208
209 int m_priority{0};
210 bool m_priorityHasBeenSet = false;
211
212 Aws::Vector<Aws::String> m_sampleUtterances;
213 bool m_sampleUtterancesHasBeenSet = false;
214
215 Aws::String m_responseCard;
216 bool m_responseCardHasBeenSet = false;
217
219 bool m_obfuscationSettingHasBeenSet = false;
220
221 SlotDefaultValueSpec m_defaultValueSpec;
222 bool m_defaultValueSpecHasBeenSet = false;
223 };
224
225} // namespace Model
226} // namespace LexModelBuildingService
227} // namespace Aws
SlotConstraint GetSlotConstraint() const
Definition Slot.h:73
const Aws::String & GetDescription() const
Definition Slot.h:61
void SetSlotType(SlotTypeT &&value)
Definition Slot.h:87
Slot & WithName(NameT &&value)
Definition Slot.h:54
void SetSampleUtterances(SampleUtterancesT &&value)
Definition Slot.h:140
Slot & WithSlotConstraint(SlotConstraint value)
Definition Slot.h:76
void SetSlotTypeVersion(SlotTypeVersionT &&value)
Definition Slot.h:99
const Aws::String & GetName() const
Definition Slot.h:49
void SetValueElicitationPrompt(ValueElicitationPromptT &&value)
Definition Slot.h:111
const SlotDefaultValueSpec & GetDefaultValueSpec() const
Definition Slot.h:182
AWS_LEXMODELBUILDINGSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_LEXMODELBUILDINGSERVICE_API Slot()=default
const Prompt & GetValueElicitationPrompt() const
Definition Slot.h:108
Slot & WithSlotTypeVersion(SlotTypeVersionT &&value)
Definition Slot.h:101
void SetResponseCard(ResponseCardT &&value)
Definition Slot.h:156
AWS_LEXMODELBUILDINGSERVICE_API Slot(Aws::Utils::Json::JsonView jsonValue)
void SetSlotConstraint(SlotConstraint value)
Definition Slot.h:75
void SetDescription(DescriptionT &&value)
Definition Slot.h:64
Slot & WithSlotType(SlotTypeT &&value)
Definition Slot.h:89
void SetDefaultValueSpec(DefaultValueSpecT &&value)
Definition Slot.h:185
Slot & WithDefaultValueSpec(DefaultValueSpecT &&value)
Definition Slot.h:187
const Aws::String & GetSlotType() const
Definition Slot.h:84
const Aws::String & GetSlotTypeVersion() const
Definition Slot.h:96
Slot & WithObfuscationSetting(ObfuscationSetting value)
Definition Slot.h:173
Slot & AddSampleUtterances(SampleUtterancesT &&value)
Definition Slot.h:144
ObfuscationSetting GetObfuscationSetting() const
Definition Slot.h:170
Slot & WithValueElicitationPrompt(ValueElicitationPromptT &&value)
Definition Slot.h:113
AWS_LEXMODELBUILDINGSERVICE_API Slot & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetObfuscationSetting(ObfuscationSetting value)
Definition Slot.h:172
const Aws::String & GetResponseCard() const
Definition Slot.h:153
Slot & WithSampleUtterances(SampleUtterancesT &&value)
Definition Slot.h:142
const Aws::Vector< Aws::String > & GetSampleUtterances() const
Definition Slot.h:137
Slot & WithResponseCard(ResponseCardT &&value)
Definition Slot.h:158
Slot & WithDescription(DescriptionT &&value)
Definition Slot.h:66
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue