AWS SDK for C++

AWS SDK for C++ Version 1.11.612

Loading...
Searching...
No Matches
SlotValueElicitationSetting.h
1
6#pragma once
7#include <aws/lexv2-models/LexModelsV2_EXPORTS.h>
8#include <aws/lexv2-models/model/SlotDefaultValueSpecification.h>
9#include <aws/lexv2-models/model/SlotConstraint.h>
10#include <aws/lexv2-models/model/PromptSpecification.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/lexv2-models/model/WaitAndContinueSpecification.h>
13#include <aws/lexv2-models/model/SlotCaptureSetting.h>
14#include <aws/lexv2-models/model/SlotResolutionSetting.h>
15#include <aws/lexv2-models/model/SampleUtterance.h>
16#include <utility>
17
18namespace Aws
19{
20namespace Utils
21{
22namespace Json
23{
24 class JsonValue;
25 class JsonView;
26} // namespace Json
27} // namespace Utils
28namespace LexModelsV2
29{
30namespace Model
31{
32
40 {
41 public:
42 AWS_LEXMODELSV2_API SlotValueElicitationSetting() = default;
45 AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const;
46
47
49
54 inline const SlotDefaultValueSpecification& GetDefaultValueSpecification() const { return m_defaultValueSpecification; }
55 inline bool DefaultValueSpecificationHasBeenSet() const { return m_defaultValueSpecificationHasBeenSet; }
56 template<typename DefaultValueSpecificationT = SlotDefaultValueSpecification>
57 void SetDefaultValueSpecification(DefaultValueSpecificationT&& value) { m_defaultValueSpecificationHasBeenSet = true; m_defaultValueSpecification = std::forward<DefaultValueSpecificationT>(value); }
58 template<typename DefaultValueSpecificationT = SlotDefaultValueSpecification>
59 SlotValueElicitationSetting& WithDefaultValueSpecification(DefaultValueSpecificationT&& value) { SetDefaultValueSpecification(std::forward<DefaultValueSpecificationT>(value)); return *this;}
61
63
66 inline SlotConstraint GetSlotConstraint() const { return m_slotConstraint; }
67 inline bool SlotConstraintHasBeenSet() const { return m_slotConstraintHasBeenSet; }
68 inline void SetSlotConstraint(SlotConstraint value) { m_slotConstraintHasBeenSet = true; m_slotConstraint = value; }
71
73
76 inline const PromptSpecification& GetPromptSpecification() const { return m_promptSpecification; }
77 inline bool PromptSpecificationHasBeenSet() const { return m_promptSpecificationHasBeenSet; }
78 template<typename PromptSpecificationT = PromptSpecification>
79 void SetPromptSpecification(PromptSpecificationT&& value) { m_promptSpecificationHasBeenSet = true; m_promptSpecification = std::forward<PromptSpecificationT>(value); }
80 template<typename PromptSpecificationT = PromptSpecification>
81 SlotValueElicitationSetting& WithPromptSpecification(PromptSpecificationT&& value) { SetPromptSpecification(std::forward<PromptSpecificationT>(value)); return *this;}
83
85
91 inline const Aws::Vector<SampleUtterance>& GetSampleUtterances() const { return m_sampleUtterances; }
92 inline bool SampleUtterancesHasBeenSet() const { return m_sampleUtterancesHasBeenSet; }
93 template<typename SampleUtterancesT = Aws::Vector<SampleUtterance>>
94 void SetSampleUtterances(SampleUtterancesT&& value) { m_sampleUtterancesHasBeenSet = true; m_sampleUtterances = std::forward<SampleUtterancesT>(value); }
95 template<typename SampleUtterancesT = Aws::Vector<SampleUtterance>>
96 SlotValueElicitationSetting& WithSampleUtterances(SampleUtterancesT&& value) { SetSampleUtterances(std::forward<SampleUtterancesT>(value)); return *this;}
97 template<typename SampleUtterancesT = SampleUtterance>
98 SlotValueElicitationSetting& AddSampleUtterances(SampleUtterancesT&& value) { m_sampleUtterancesHasBeenSet = true; m_sampleUtterances.emplace_back(std::forward<SampleUtterancesT>(value)); return *this; }
100
102
103 inline const WaitAndContinueSpecification& GetWaitAndContinueSpecification() const { return m_waitAndContinueSpecification; }
104 inline bool WaitAndContinueSpecificationHasBeenSet() const { return m_waitAndContinueSpecificationHasBeenSet; }
105 template<typename WaitAndContinueSpecificationT = WaitAndContinueSpecification>
106 void SetWaitAndContinueSpecification(WaitAndContinueSpecificationT&& value) { m_waitAndContinueSpecificationHasBeenSet = true; m_waitAndContinueSpecification = std::forward<WaitAndContinueSpecificationT>(value); }
107 template<typename WaitAndContinueSpecificationT = WaitAndContinueSpecification>
108 SlotValueElicitationSetting& WithWaitAndContinueSpecification(WaitAndContinueSpecificationT&& value) { SetWaitAndContinueSpecification(std::forward<WaitAndContinueSpecificationT>(value)); return *this;}
110
112
116 inline const SlotCaptureSetting& GetSlotCaptureSetting() const { return m_slotCaptureSetting; }
117 inline bool SlotCaptureSettingHasBeenSet() const { return m_slotCaptureSettingHasBeenSet; }
118 template<typename SlotCaptureSettingT = SlotCaptureSetting>
119 void SetSlotCaptureSetting(SlotCaptureSettingT&& value) { m_slotCaptureSettingHasBeenSet = true; m_slotCaptureSetting = std::forward<SlotCaptureSettingT>(value); }
120 template<typename SlotCaptureSettingT = SlotCaptureSetting>
121 SlotValueElicitationSetting& WithSlotCaptureSetting(SlotCaptureSettingT&& value) { SetSlotCaptureSetting(std::forward<SlotCaptureSettingT>(value)); return *this;}
123
125
129 inline const SlotResolutionSetting& GetSlotResolutionSetting() const { return m_slotResolutionSetting; }
130 inline bool SlotResolutionSettingHasBeenSet() const { return m_slotResolutionSettingHasBeenSet; }
131 template<typename SlotResolutionSettingT = SlotResolutionSetting>
132 void SetSlotResolutionSetting(SlotResolutionSettingT&& value) { m_slotResolutionSettingHasBeenSet = true; m_slotResolutionSetting = std::forward<SlotResolutionSettingT>(value); }
133 template<typename SlotResolutionSettingT = SlotResolutionSetting>
134 SlotValueElicitationSetting& WithSlotResolutionSetting(SlotResolutionSettingT&& value) { SetSlotResolutionSetting(std::forward<SlotResolutionSettingT>(value)); return *this;}
136 private:
137
138 SlotDefaultValueSpecification m_defaultValueSpecification;
139 bool m_defaultValueSpecificationHasBeenSet = false;
140
141 SlotConstraint m_slotConstraint{SlotConstraint::NOT_SET};
142 bool m_slotConstraintHasBeenSet = false;
143
144 PromptSpecification m_promptSpecification;
145 bool m_promptSpecificationHasBeenSet = false;
146
147 Aws::Vector<SampleUtterance> m_sampleUtterances;
148 bool m_sampleUtterancesHasBeenSet = false;
149
150 WaitAndContinueSpecification m_waitAndContinueSpecification;
151 bool m_waitAndContinueSpecificationHasBeenSet = false;
152
153 SlotCaptureSetting m_slotCaptureSetting;
154 bool m_slotCaptureSettingHasBeenSet = false;
155
156 SlotResolutionSetting m_slotResolutionSetting;
157 bool m_slotResolutionSettingHasBeenSet = false;
158 };
159
160} // namespace Model
161} // namespace LexModelsV2
162} // 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