AWS SDK for C++

AWS SDK for C++ Version 1.11.748

Loading...
Searching...
No Matches
SlotValueElicitationSetting.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSVector.h>
8#include <aws/lexv2-models/LexModelsV2_EXPORTS.h>
9#include <aws/lexv2-models/model/PromptSpecification.h>
10#include <aws/lexv2-models/model/SampleUtterance.h>
11#include <aws/lexv2-models/model/SlotCaptureSetting.h>
12#include <aws/lexv2-models/model/SlotConstraint.h>
13#include <aws/lexv2-models/model/SlotDefaultValueSpecification.h>
14#include <aws/lexv2-models/model/SlotResolutionSetting.h>
15#include <aws/lexv2-models/model/WaitAndContinueSpecification.h>
16
17#include <utility>
18
19namespace Aws {
20namespace Utils {
21namespace Json {
22class JsonValue;
23class JsonView;
24} // namespace Json
25} // namespace Utils
26namespace LexModelsV2 {
27namespace Model {
28
36 public:
37 AWS_LEXMODELSV2_API SlotValueElicitationSetting() = default;
40 AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const;
41
43
48 inline const SlotDefaultValueSpecification& GetDefaultValueSpecification() const { return m_defaultValueSpecification; }
49 inline bool DefaultValueSpecificationHasBeenSet() const { return m_defaultValueSpecificationHasBeenSet; }
50 template <typename DefaultValueSpecificationT = SlotDefaultValueSpecification>
51 void SetDefaultValueSpecification(DefaultValueSpecificationT&& value) {
52 m_defaultValueSpecificationHasBeenSet = true;
53 m_defaultValueSpecification = std::forward<DefaultValueSpecificationT>(value);
54 }
55 template <typename DefaultValueSpecificationT = SlotDefaultValueSpecification>
56 SlotValueElicitationSetting& WithDefaultValueSpecification(DefaultValueSpecificationT&& value) {
57 SetDefaultValueSpecification(std::forward<DefaultValueSpecificationT>(value));
58 return *this;
59 }
61
63
66 inline SlotConstraint GetSlotConstraint() const { return m_slotConstraint; }
67 inline bool SlotConstraintHasBeenSet() const { return m_slotConstraintHasBeenSet; }
68 inline void SetSlotConstraint(SlotConstraint value) {
69 m_slotConstraintHasBeenSet = true;
70 m_slotConstraint = value;
71 }
73 SetSlotConstraint(value);
74 return *this;
75 }
77
79
82 inline const PromptSpecification& GetPromptSpecification() const { return m_promptSpecification; }
83 inline bool PromptSpecificationHasBeenSet() const { return m_promptSpecificationHasBeenSet; }
84 template <typename PromptSpecificationT = PromptSpecification>
85 void SetPromptSpecification(PromptSpecificationT&& value) {
86 m_promptSpecificationHasBeenSet = true;
87 m_promptSpecification = std::forward<PromptSpecificationT>(value);
88 }
89 template <typename PromptSpecificationT = PromptSpecification>
91 SetPromptSpecification(std::forward<PromptSpecificationT>(value));
92 return *this;
93 }
95
97
103 inline const Aws::Vector<SampleUtterance>& GetSampleUtterances() const { return m_sampleUtterances; }
104 inline bool SampleUtterancesHasBeenSet() const { return m_sampleUtterancesHasBeenSet; }
105 template <typename SampleUtterancesT = Aws::Vector<SampleUtterance>>
106 void SetSampleUtterances(SampleUtterancesT&& value) {
107 m_sampleUtterancesHasBeenSet = true;
108 m_sampleUtterances = std::forward<SampleUtterancesT>(value);
109 }
110 template <typename SampleUtterancesT = Aws::Vector<SampleUtterance>>
112 SetSampleUtterances(std::forward<SampleUtterancesT>(value));
113 return *this;
114 }
115 template <typename SampleUtterancesT = SampleUtterance>
117 m_sampleUtterancesHasBeenSet = true;
118 m_sampleUtterances.emplace_back(std::forward<SampleUtterancesT>(value));
119 return *this;
120 }
122
124
125 inline const WaitAndContinueSpecification& GetWaitAndContinueSpecification() const { return m_waitAndContinueSpecification; }
126 inline bool WaitAndContinueSpecificationHasBeenSet() const { return m_waitAndContinueSpecificationHasBeenSet; }
127 template <typename WaitAndContinueSpecificationT = WaitAndContinueSpecification>
128 void SetWaitAndContinueSpecification(WaitAndContinueSpecificationT&& value) {
129 m_waitAndContinueSpecificationHasBeenSet = true;
130 m_waitAndContinueSpecification = std::forward<WaitAndContinueSpecificationT>(value);
131 }
132 template <typename WaitAndContinueSpecificationT = WaitAndContinueSpecification>
133 SlotValueElicitationSetting& WithWaitAndContinueSpecification(WaitAndContinueSpecificationT&& value) {
134 SetWaitAndContinueSpecification(std::forward<WaitAndContinueSpecificationT>(value));
135 return *this;
136 }
138
140
144 inline const SlotCaptureSetting& GetSlotCaptureSetting() const { return m_slotCaptureSetting; }
145 inline bool SlotCaptureSettingHasBeenSet() const { return m_slotCaptureSettingHasBeenSet; }
146 template <typename SlotCaptureSettingT = SlotCaptureSetting>
147 void SetSlotCaptureSetting(SlotCaptureSettingT&& value) {
148 m_slotCaptureSettingHasBeenSet = true;
149 m_slotCaptureSetting = std::forward<SlotCaptureSettingT>(value);
150 }
151 template <typename SlotCaptureSettingT = SlotCaptureSetting>
153 SetSlotCaptureSetting(std::forward<SlotCaptureSettingT>(value));
154 return *this;
155 }
157
159
163 inline const SlotResolutionSetting& GetSlotResolutionSetting() const { return m_slotResolutionSetting; }
164 inline bool SlotResolutionSettingHasBeenSet() const { return m_slotResolutionSettingHasBeenSet; }
165 template <typename SlotResolutionSettingT = SlotResolutionSetting>
166 void SetSlotResolutionSetting(SlotResolutionSettingT&& value) {
167 m_slotResolutionSettingHasBeenSet = true;
168 m_slotResolutionSetting = std::forward<SlotResolutionSettingT>(value);
169 }
170 template <typename SlotResolutionSettingT = SlotResolutionSetting>
172 SetSlotResolutionSetting(std::forward<SlotResolutionSettingT>(value));
173 return *this;
174 }
176 private:
177 SlotDefaultValueSpecification m_defaultValueSpecification;
178
179 SlotConstraint m_slotConstraint{SlotConstraint::NOT_SET};
180
181 PromptSpecification m_promptSpecification;
182
183 Aws::Vector<SampleUtterance> m_sampleUtterances;
184
185 WaitAndContinueSpecification m_waitAndContinueSpecification;
186
187 SlotCaptureSetting m_slotCaptureSetting;
188
189 SlotResolutionSetting m_slotResolutionSetting;
190 bool m_defaultValueSpecificationHasBeenSet = false;
191 bool m_slotConstraintHasBeenSet = false;
192 bool m_promptSpecificationHasBeenSet = false;
193 bool m_sampleUtterancesHasBeenSet = false;
194 bool m_waitAndContinueSpecificationHasBeenSet = false;
195 bool m_slotCaptureSettingHasBeenSet = false;
196 bool m_slotResolutionSettingHasBeenSet = false;
197};
198
199} // namespace Model
200} // namespace LexModelsV2
201} // namespace Aws
SlotValueElicitationSetting & WithSampleUtterances(SampleUtterancesT &&value)
AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const
const WaitAndContinueSpecification & GetWaitAndContinueSpecification() const
SlotValueElicitationSetting & WithPromptSpecification(PromptSpecificationT &&value)
void SetWaitAndContinueSpecification(WaitAndContinueSpecificationT &&value)
void SetDefaultValueSpecification(DefaultValueSpecificationT &&value)
const SlotDefaultValueSpecification & GetDefaultValueSpecification() const
SlotValueElicitationSetting & WithSlotCaptureSetting(SlotCaptureSettingT &&value)
SlotValueElicitationSetting & WithSlotResolutionSetting(SlotResolutionSettingT &&value)
AWS_LEXMODELSV2_API SlotValueElicitationSetting & operator=(Aws::Utils::Json::JsonView jsonValue)
SlotValueElicitationSetting & WithDefaultValueSpecification(DefaultValueSpecificationT &&value)
SlotValueElicitationSetting & WithSlotConstraint(SlotConstraint value)
AWS_LEXMODELSV2_API SlotValueElicitationSetting(Aws::Utils::Json::JsonView jsonValue)
SlotValueElicitationSetting & AddSampleUtterances(SampleUtterancesT &&value)
AWS_LEXMODELSV2_API SlotValueElicitationSetting()=default
const Aws::Vector< SampleUtterance > & GetSampleUtterances() const
SlotValueElicitationSetting & WithWaitAndContinueSpecification(WaitAndContinueSpecificationT &&value)
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue