AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
DialogAction.h
1
6#pragma once
7#include <aws/lexv2-runtime/LexRuntimeV2_EXPORTS.h>
8#include <aws/lexv2-runtime/model/DialogActionType.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/lexv2-runtime/model/StyleType.h>
11#include <aws/lexv2-runtime/model/ElicitSubSlot.h>
12#include <utility>
13
14namespace Aws
15{
16namespace Utils
17{
18namespace Json
19{
20 class JsonValue;
21 class JsonView;
22} // namespace Json
23} // namespace Utils
24namespace LexRuntimeV2
25{
26namespace Model
27{
28
35 {
36 public:
37 AWS_LEXRUNTIMEV2_API DialogAction() = default;
38 AWS_LEXRUNTIMEV2_API DialogAction(Aws::Utils::Json::JsonView jsonValue);
39 AWS_LEXRUNTIMEV2_API DialogAction& operator=(Aws::Utils::Json::JsonView jsonValue);
40 AWS_LEXRUNTIMEV2_API Aws::Utils::Json::JsonValue Jsonize() const;
41
42
44
57 inline DialogActionType GetType() const { return m_type; }
58 inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
59 inline void SetType(DialogActionType value) { m_typeHasBeenSet = true; m_type = value; }
60 inline DialogAction& WithType(DialogActionType value) { SetType(value); return *this;}
62
64
67 inline const Aws::String& GetSlotToElicit() const { return m_slotToElicit; }
68 inline bool SlotToElicitHasBeenSet() const { return m_slotToElicitHasBeenSet; }
69 template<typename SlotToElicitT = Aws::String>
70 void SetSlotToElicit(SlotToElicitT&& value) { m_slotToElicitHasBeenSet = true; m_slotToElicit = std::forward<SlotToElicitT>(value); }
71 template<typename SlotToElicitT = Aws::String>
72 DialogAction& WithSlotToElicit(SlotToElicitT&& value) { SetSlotToElicit(std::forward<SlotToElicitT>(value)); return *this;}
74
76
85 inline StyleType GetSlotElicitationStyle() const { return m_slotElicitationStyle; }
86 inline bool SlotElicitationStyleHasBeenSet() const { return m_slotElicitationStyleHasBeenSet; }
87 inline void SetSlotElicitationStyle(StyleType value) { m_slotElicitationStyleHasBeenSet = true; m_slotElicitationStyle = value; }
90
92
96 inline const ElicitSubSlot& GetSubSlotToElicit() const { return m_subSlotToElicit; }
97 inline bool SubSlotToElicitHasBeenSet() const { return m_subSlotToElicitHasBeenSet; }
98 template<typename SubSlotToElicitT = ElicitSubSlot>
99 void SetSubSlotToElicit(SubSlotToElicitT&& value) { m_subSlotToElicitHasBeenSet = true; m_subSlotToElicit = std::forward<SubSlotToElicitT>(value); }
100 template<typename SubSlotToElicitT = ElicitSubSlot>
101 DialogAction& WithSubSlotToElicit(SubSlotToElicitT&& value) { SetSubSlotToElicit(std::forward<SubSlotToElicitT>(value)); return *this;}
103 private:
104
106 bool m_typeHasBeenSet = false;
107
108 Aws::String m_slotToElicit;
109 bool m_slotToElicitHasBeenSet = false;
110
111 StyleType m_slotElicitationStyle{StyleType::NOT_SET};
112 bool m_slotElicitationStyleHasBeenSet = false;
113
114 ElicitSubSlot m_subSlotToElicit;
115 bool m_subSlotToElicitHasBeenSet = false;
116 };
117
118} // namespace Model
119} // namespace LexRuntimeV2
120} // namespace Aws
void SetSubSlotToElicit(SubSlotToElicitT &&value)
const ElicitSubSlot & GetSubSlotToElicit() const
AWS_LEXRUNTIMEV2_API Aws::Utils::Json::JsonValue Jsonize() const
DialogAction & WithSlotElicitationStyle(StyleType value)
AWS_LEXRUNTIMEV2_API DialogAction & operator=(Aws::Utils::Json::JsonView jsonValue)
DialogAction & WithSubSlotToElicit(SubSlotToElicitT &&value)
void SetSlotElicitationStyle(StyleType value)
DialogAction & WithSlotToElicit(SlotToElicitT &&value)
DialogAction & WithType(DialogActionType value)
void SetSlotToElicit(SlotToElicitT &&value)
void SetType(DialogActionType value)
AWS_LEXRUNTIMEV2_API DialogAction()=default
const Aws::String & GetSlotToElicit() const
AWS_LEXRUNTIMEV2_API DialogAction(Aws::Utils::Json::JsonView jsonValue)
DialogActionType GetType() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue