AWS SDK for C++

AWS SDK for C++ Version 1.11.926

Loading...
Searching...
No Matches
Slot.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/lex-models/LexModelBuildingService_EXPORTS.h>
10#include <aws/lex-models/model/ObfuscationSetting.h>
11#include <aws/lex-models/model/Prompt.h>
12#include <aws/lex-models/model/SlotConstraint.h>
13#include <aws/lex-models/model/SlotDefaultValueSpec.h>
14
15#include <utility>
16
17namespace Aws {
18namespace Utils {
19namespace Json {
20class JsonValue;
21class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace LexModelBuildingService {
25namespace Model {
26
32class Slot {
33 public:
34 AWS_LEXMODELBUILDINGSERVICE_API Slot() = default;
35 AWS_LEXMODELBUILDINGSERVICE_API Slot(Aws::Utils::Json::JsonView jsonValue);
36 AWS_LEXMODELBUILDINGSERVICE_API Slot& operator=(Aws::Utils::Json::JsonView jsonValue);
37 AWS_LEXMODELBUILDINGSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const;
38
40
43 inline const Aws::String& GetName() const { return m_name; }
44 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
45 template <typename NameT = Aws::String>
46 void SetName(NameT&& value) {
47 m_nameHasBeenSet = true;
48 m_name = std::forward<NameT>(value);
49 }
50 template <typename NameT = Aws::String>
51 Slot& WithName(NameT&& value) {
52 SetName(std::forward<NameT>(value));
53 return *this;
54 }
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) {
65 m_descriptionHasBeenSet = true;
66 m_description = std::forward<DescriptionT>(value);
67 }
68 template <typename DescriptionT = Aws::String>
69 Slot& WithDescription(DescriptionT&& value) {
70 SetDescription(std::forward<DescriptionT>(value));
71 return *this;
72 }
74
76
79 inline SlotConstraint GetSlotConstraint() const { return m_slotConstraint; }
80 inline bool SlotConstraintHasBeenSet() const { return m_slotConstraintHasBeenSet; }
81 inline void SetSlotConstraint(SlotConstraint value) {
82 m_slotConstraintHasBeenSet = true;
83 m_slotConstraint = value;
84 }
86 SetSlotConstraint(value);
87 return *this;
88 }
90
92
96 inline const Aws::String& GetSlotType() const { return m_slotType; }
97 inline bool SlotTypeHasBeenSet() const { return m_slotTypeHasBeenSet; }
98 template <typename SlotTypeT = Aws::String>
99 void SetSlotType(SlotTypeT&& value) {
100 m_slotTypeHasBeenSet = true;
101 m_slotType = std::forward<SlotTypeT>(value);
102 }
103 template <typename SlotTypeT = Aws::String>
104 Slot& WithSlotType(SlotTypeT&& value) {
105 SetSlotType(std::forward<SlotTypeT>(value));
106 return *this;
107 }
109
111
114 inline const Aws::String& GetSlotTypeVersion() const { return m_slotTypeVersion; }
115 inline bool SlotTypeVersionHasBeenSet() const { return m_slotTypeVersionHasBeenSet; }
116 template <typename SlotTypeVersionT = Aws::String>
117 void SetSlotTypeVersion(SlotTypeVersionT&& value) {
118 m_slotTypeVersionHasBeenSet = true;
119 m_slotTypeVersion = std::forward<SlotTypeVersionT>(value);
120 }
121 template <typename SlotTypeVersionT = Aws::String>
122 Slot& WithSlotTypeVersion(SlotTypeVersionT&& value) {
123 SetSlotTypeVersion(std::forward<SlotTypeVersionT>(value));
124 return *this;
125 }
127
129
132 inline const Prompt& GetValueElicitationPrompt() const { return m_valueElicitationPrompt; }
133 inline bool ValueElicitationPromptHasBeenSet() const { return m_valueElicitationPromptHasBeenSet; }
134 template <typename ValueElicitationPromptT = Prompt>
135 void SetValueElicitationPrompt(ValueElicitationPromptT&& value) {
136 m_valueElicitationPromptHasBeenSet = true;
137 m_valueElicitationPrompt = std::forward<ValueElicitationPromptT>(value);
138 }
139 template <typename ValueElicitationPromptT = Prompt>
140 Slot& WithValueElicitationPrompt(ValueElicitationPromptT&& value) {
141 SetValueElicitationPrompt(std::forward<ValueElicitationPromptT>(value));
142 return *this;
143 }
145
147
154 inline int GetPriority() const { return m_priority; }
155 inline bool PriorityHasBeenSet() const { return m_priorityHasBeenSet; }
156 inline void SetPriority(int value) {
157 m_priorityHasBeenSet = true;
158 m_priority = value;
159 }
160 inline Slot& WithPriority(int value) {
161 SetPriority(value);
162 return *this;
163 }
165
167
173 inline const Aws::Vector<Aws::String>& GetSampleUtterances() const { return m_sampleUtterances; }
174 inline bool SampleUtterancesHasBeenSet() const { return m_sampleUtterancesHasBeenSet; }
175 template <typename SampleUtterancesT = Aws::Vector<Aws::String>>
176 void SetSampleUtterances(SampleUtterancesT&& value) {
177 m_sampleUtterancesHasBeenSet = true;
178 m_sampleUtterances = std::forward<SampleUtterancesT>(value);
179 }
180 template <typename SampleUtterancesT = Aws::Vector<Aws::String>>
181 Slot& WithSampleUtterances(SampleUtterancesT&& value) {
182 SetSampleUtterances(std::forward<SampleUtterancesT>(value));
183 return *this;
184 }
185 template <typename SampleUtterancesT = Aws::String>
186 Slot& AddSampleUtterances(SampleUtterancesT&& value) {
187 m_sampleUtterancesHasBeenSet = true;
188 m_sampleUtterances.emplace_back(std::forward<SampleUtterancesT>(value));
189 return *this;
190 }
192
194
199 inline const Aws::String& GetResponseCard() const { return m_responseCard; }
200 inline bool ResponseCardHasBeenSet() const { return m_responseCardHasBeenSet; }
201 template <typename ResponseCardT = Aws::String>
202 void SetResponseCard(ResponseCardT&& value) {
203 m_responseCardHasBeenSet = true;
204 m_responseCard = std::forward<ResponseCardT>(value);
205 }
206 template <typename ResponseCardT = Aws::String>
207 Slot& WithResponseCard(ResponseCardT&& value) {
208 SetResponseCard(std::forward<ResponseCardT>(value));
209 return *this;
210 }
212
214
222 inline ObfuscationSetting GetObfuscationSetting() const { return m_obfuscationSetting; }
223 inline bool ObfuscationSettingHasBeenSet() const { return m_obfuscationSettingHasBeenSet; }
225 m_obfuscationSettingHasBeenSet = true;
226 m_obfuscationSetting = value;
227 }
230 return *this;
231 }
233
235
240 inline const SlotDefaultValueSpec& GetDefaultValueSpec() const { return m_defaultValueSpec; }
241 inline bool DefaultValueSpecHasBeenSet() const { return m_defaultValueSpecHasBeenSet; }
242 template <typename DefaultValueSpecT = SlotDefaultValueSpec>
243 void SetDefaultValueSpec(DefaultValueSpecT&& value) {
244 m_defaultValueSpecHasBeenSet = true;
245 m_defaultValueSpec = std::forward<DefaultValueSpecT>(value);
246 }
247 template <typename DefaultValueSpecT = SlotDefaultValueSpec>
248 Slot& WithDefaultValueSpec(DefaultValueSpecT&& value) {
249 SetDefaultValueSpec(std::forward<DefaultValueSpecT>(value));
250 return *this;
251 }
253 private:
254 Aws::String m_name;
255
256 Aws::String m_description;
257
258 SlotConstraint m_slotConstraint{SlotConstraint::NOT_SET};
259
260 Aws::String m_slotType;
261
262 Aws::String m_slotTypeVersion;
263
264 Prompt m_valueElicitationPrompt;
265
266 int m_priority{0};
267
268 Aws::Vector<Aws::String> m_sampleUtterances;
269
270 Aws::String m_responseCard;
271
273
274 SlotDefaultValueSpec m_defaultValueSpec;
275 bool m_nameHasBeenSet = false;
276 bool m_descriptionHasBeenSet = false;
277 bool m_slotConstraintHasBeenSet = false;
278 bool m_slotTypeHasBeenSet = false;
279 bool m_slotTypeVersionHasBeenSet = false;
280 bool m_valueElicitationPromptHasBeenSet = false;
281 bool m_priorityHasBeenSet = false;
282 bool m_sampleUtterancesHasBeenSet = false;
283 bool m_responseCardHasBeenSet = false;
284 bool m_obfuscationSettingHasBeenSet = false;
285 bool m_defaultValueSpecHasBeenSet = false;
286};
287
288} // namespace Model
289} // namespace LexModelBuildingService
290} // namespace Aws
SlotConstraint GetSlotConstraint() const
Definition Slot.h:79
const Aws::String & GetDescription() const
Definition Slot.h:61
void SetSlotType(SlotTypeT &&value)
Definition Slot.h:99
Slot & WithName(NameT &&value)
Definition Slot.h:51
void SetSampleUtterances(SampleUtterancesT &&value)
Definition Slot.h:176
Slot & WithSlotConstraint(SlotConstraint value)
Definition Slot.h:85
void SetSlotTypeVersion(SlotTypeVersionT &&value)
Definition Slot.h:117
const Aws::String & GetName() const
Definition Slot.h:43
void SetValueElicitationPrompt(ValueElicitationPromptT &&value)
Definition Slot.h:135
const SlotDefaultValueSpec & GetDefaultValueSpec() const
Definition Slot.h:240
AWS_LEXMODELBUILDINGSERVICE_API Aws::Utils::Json::JsonValue Jsonize() const
AWS_LEXMODELBUILDINGSERVICE_API Slot()=default
const Prompt & GetValueElicitationPrompt() const
Definition Slot.h:132
Slot & WithSlotTypeVersion(SlotTypeVersionT &&value)
Definition Slot.h:122
void SetResponseCard(ResponseCardT &&value)
Definition Slot.h:202
AWS_LEXMODELBUILDINGSERVICE_API Slot(Aws::Utils::Json::JsonView jsonValue)
void SetSlotConstraint(SlotConstraint value)
Definition Slot.h:81
void SetDescription(DescriptionT &&value)
Definition Slot.h:64
Slot & WithSlotType(SlotTypeT &&value)
Definition Slot.h:104
void SetDefaultValueSpec(DefaultValueSpecT &&value)
Definition Slot.h:243
Slot & WithDefaultValueSpec(DefaultValueSpecT &&value)
Definition Slot.h:248
const Aws::String & GetSlotType() const
Definition Slot.h:96
const Aws::String & GetSlotTypeVersion() const
Definition Slot.h:114
Slot & WithObfuscationSetting(ObfuscationSetting value)
Definition Slot.h:228
Slot & AddSampleUtterances(SampleUtterancesT &&value)
Definition Slot.h:186
ObfuscationSetting GetObfuscationSetting() const
Definition Slot.h:222
Slot & WithValueElicitationPrompt(ValueElicitationPromptT &&value)
Definition Slot.h:140
AWS_LEXMODELBUILDINGSERVICE_API Slot & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetObfuscationSetting(ObfuscationSetting value)
Definition Slot.h:224
const Aws::String & GetResponseCard() const
Definition Slot.h:199
Slot & WithSampleUtterances(SampleUtterancesT &&value)
Definition Slot.h:181
const Aws::Vector< Aws::String > & GetSampleUtterances() const
Definition Slot.h:173
Slot & WithResponseCard(ResponseCardT &&value)
Definition Slot.h:207
Slot & WithDescription(DescriptionT &&value)
Definition Slot.h:69
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue