AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
SubSlotValueElicitationSetting.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/PromptSpecification.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/lexv2-models/model/WaitAndContinueSpecification.h>
12#include <aws/lexv2-models/model/SampleUtterance.h>
13#include <utility>
14
15namespace Aws
16{
17namespace Utils
18{
19namespace Json
20{
21 class JsonValue;
22 class JsonView;
23} // namespace Json
24} // namespace Utils
25namespace LexModelsV2
26{
27namespace Model
28{
29
43 {
44 public:
45 AWS_LEXMODELSV2_API SubSlotValueElicitationSetting() = default;
48 AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const;
49
50
52
53 inline const SlotDefaultValueSpecification& GetDefaultValueSpecification() const { return m_defaultValueSpecification; }
54 inline bool DefaultValueSpecificationHasBeenSet() const { return m_defaultValueSpecificationHasBeenSet; }
55 template<typename DefaultValueSpecificationT = SlotDefaultValueSpecification>
56 void SetDefaultValueSpecification(DefaultValueSpecificationT&& value) { m_defaultValueSpecificationHasBeenSet = true; m_defaultValueSpecification = std::forward<DefaultValueSpecificationT>(value); }
57 template<typename DefaultValueSpecificationT = SlotDefaultValueSpecification>
58 SubSlotValueElicitationSetting& WithDefaultValueSpecification(DefaultValueSpecificationT&& value) { SetDefaultValueSpecification(std::forward<DefaultValueSpecificationT>(value)); return *this;}
60
62
63 inline const PromptSpecification& GetPromptSpecification() const { return m_promptSpecification; }
64 inline bool PromptSpecificationHasBeenSet() const { return m_promptSpecificationHasBeenSet; }
65 template<typename PromptSpecificationT = PromptSpecification>
66 void SetPromptSpecification(PromptSpecificationT&& value) { m_promptSpecificationHasBeenSet = true; m_promptSpecification = std::forward<PromptSpecificationT>(value); }
67 template<typename PromptSpecificationT = PromptSpecification>
68 SubSlotValueElicitationSetting& WithPromptSpecification(PromptSpecificationT&& value) { SetPromptSpecification(std::forward<PromptSpecificationT>(value)); return *this;}
70
72
78 inline const Aws::Vector<SampleUtterance>& GetSampleUtterances() const { return m_sampleUtterances; }
79 inline bool SampleUtterancesHasBeenSet() const { return m_sampleUtterancesHasBeenSet; }
80 template<typename SampleUtterancesT = Aws::Vector<SampleUtterance>>
81 void SetSampleUtterances(SampleUtterancesT&& value) { m_sampleUtterancesHasBeenSet = true; m_sampleUtterances = std::forward<SampleUtterancesT>(value); }
82 template<typename SampleUtterancesT = Aws::Vector<SampleUtterance>>
83 SubSlotValueElicitationSetting& WithSampleUtterances(SampleUtterancesT&& value) { SetSampleUtterances(std::forward<SampleUtterancesT>(value)); return *this;}
84 template<typename SampleUtterancesT = SampleUtterance>
85 SubSlotValueElicitationSetting& AddSampleUtterances(SampleUtterancesT&& value) { m_sampleUtterancesHasBeenSet = true; m_sampleUtterances.emplace_back(std::forward<SampleUtterancesT>(value)); return *this; }
87
89
90 inline const WaitAndContinueSpecification& GetWaitAndContinueSpecification() const { return m_waitAndContinueSpecification; }
91 inline bool WaitAndContinueSpecificationHasBeenSet() const { return m_waitAndContinueSpecificationHasBeenSet; }
92 template<typename WaitAndContinueSpecificationT = WaitAndContinueSpecification>
93 void SetWaitAndContinueSpecification(WaitAndContinueSpecificationT&& value) { m_waitAndContinueSpecificationHasBeenSet = true; m_waitAndContinueSpecification = std::forward<WaitAndContinueSpecificationT>(value); }
94 template<typename WaitAndContinueSpecificationT = WaitAndContinueSpecification>
95 SubSlotValueElicitationSetting& WithWaitAndContinueSpecification(WaitAndContinueSpecificationT&& value) { SetWaitAndContinueSpecification(std::forward<WaitAndContinueSpecificationT>(value)); return *this;}
97 private:
98
99 SlotDefaultValueSpecification m_defaultValueSpecification;
100 bool m_defaultValueSpecificationHasBeenSet = false;
101
102 PromptSpecification m_promptSpecification;
103 bool m_promptSpecificationHasBeenSet = false;
104
105 Aws::Vector<SampleUtterance> m_sampleUtterances;
106 bool m_sampleUtterancesHasBeenSet = false;
107
108 WaitAndContinueSpecification m_waitAndContinueSpecification;
109 bool m_waitAndContinueSpecificationHasBeenSet = false;
110 };
111
112} // namespace Model
113} // namespace LexModelsV2
114} // namespace Aws
const SlotDefaultValueSpecification & GetDefaultValueSpecification() const
SubSlotValueElicitationSetting & WithDefaultValueSpecification(DefaultValueSpecificationT &&value)
SubSlotValueElicitationSetting & WithWaitAndContinueSpecification(WaitAndContinueSpecificationT &&value)
SubSlotValueElicitationSetting & WithPromptSpecification(PromptSpecificationT &&value)
void SetWaitAndContinueSpecification(WaitAndContinueSpecificationT &&value)
SubSlotValueElicitationSetting & WithSampleUtterances(SampleUtterancesT &&value)
SubSlotValueElicitationSetting & AddSampleUtterances(SampleUtterancesT &&value)
AWS_LEXMODELSV2_API SubSlotValueElicitationSetting()=default
AWS_LEXMODELSV2_API SubSlotValueElicitationSetting(Aws::Utils::Json::JsonView jsonValue)
AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const
void SetDefaultValueSpecification(DefaultValueSpecificationT &&value)
const WaitAndContinueSpecification & GetWaitAndContinueSpecification() const
AWS_LEXMODELSV2_API SubSlotValueElicitationSetting & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::Vector< SampleUtterance > & GetSampleUtterances() const
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue