AWS SDK for C++

AWS SDK for C++ Version 1.11.746

Loading...
Searching...
No Matches
DialogState.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSMap.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/lexv2-models/LexModelsV2_EXPORTS.h>
10#include <aws/lexv2-models/model/DialogAction.h>
11#include <aws/lexv2-models/model/IntentOverride.h>
12
13#include <utility>
14
15namespace Aws {
16namespace Utils {
17namespace Json {
18class JsonValue;
19class JsonView;
20} // namespace Json
21} // namespace Utils
22namespace LexModelsV2 {
23namespace Model {
24
32 public:
33 AWS_LEXMODELSV2_API DialogState() = default;
34 AWS_LEXMODELSV2_API DialogState(Aws::Utils::Json::JsonView jsonValue);
35 AWS_LEXMODELSV2_API DialogState& operator=(Aws::Utils::Json::JsonView jsonValue);
36 AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const;
37
39
40 inline const DialogAction& GetDialogAction() const { return m_dialogAction; }
41 inline bool DialogActionHasBeenSet() const { return m_dialogActionHasBeenSet; }
42 template <typename DialogActionT = DialogAction>
43 void SetDialogAction(DialogActionT&& value) {
44 m_dialogActionHasBeenSet = true;
45 m_dialogAction = std::forward<DialogActionT>(value);
46 }
47 template <typename DialogActionT = DialogAction>
48 DialogState& WithDialogAction(DialogActionT&& value) {
49 SetDialogAction(std::forward<DialogActionT>(value));
50 return *this;
51 }
53
55
56 inline const IntentOverride& GetIntent() const { return m_intent; }
57 inline bool IntentHasBeenSet() const { return m_intentHasBeenSet; }
58 template <typename IntentT = IntentOverride>
59 void SetIntent(IntentT&& value) {
60 m_intentHasBeenSet = true;
61 m_intent = std::forward<IntentT>(value);
62 }
63 template <typename IntentT = IntentOverride>
64 DialogState& WithIntent(IntentT&& value) {
65 SetIntent(std::forward<IntentT>(value));
66 return *this;
67 }
69
71
76 inline const Aws::Map<Aws::String, Aws::String>& GetSessionAttributes() const { return m_sessionAttributes; }
77 inline bool SessionAttributesHasBeenSet() const { return m_sessionAttributesHasBeenSet; }
78 template <typename SessionAttributesT = Aws::Map<Aws::String, Aws::String>>
79 void SetSessionAttributes(SessionAttributesT&& value) {
80 m_sessionAttributesHasBeenSet = true;
81 m_sessionAttributes = std::forward<SessionAttributesT>(value);
82 }
83 template <typename SessionAttributesT = Aws::Map<Aws::String, Aws::String>>
84 DialogState& WithSessionAttributes(SessionAttributesT&& value) {
85 SetSessionAttributes(std::forward<SessionAttributesT>(value));
86 return *this;
87 }
88 template <typename SessionAttributesKeyT = Aws::String, typename SessionAttributesValueT = Aws::String>
89 DialogState& AddSessionAttributes(SessionAttributesKeyT&& key, SessionAttributesValueT&& value) {
90 m_sessionAttributesHasBeenSet = true;
91 m_sessionAttributes.emplace(std::forward<SessionAttributesKeyT>(key), std::forward<SessionAttributesValueT>(value));
92 return *this;
93 }
95 private:
96 DialogAction m_dialogAction;
97
98 IntentOverride m_intent;
99
100 Aws::Map<Aws::String, Aws::String> m_sessionAttributes;
101 bool m_dialogActionHasBeenSet = false;
102 bool m_intentHasBeenSet = false;
103 bool m_sessionAttributesHasBeenSet = false;
104};
105
106} // namespace Model
107} // namespace LexModelsV2
108} // namespace Aws
DialogState & WithDialogAction(DialogActionT &&value)
Definition DialogState.h:48
DialogState & AddSessionAttributes(SessionAttributesKeyT &&key, SessionAttributesValueT &&value)
Definition DialogState.h:89
void SetDialogAction(DialogActionT &&value)
Definition DialogState.h:43
AWS_LEXMODELSV2_API DialogState(Aws::Utils::Json::JsonView jsonValue)
AWS_LEXMODELSV2_API DialogState()=default
void SetSessionAttributes(SessionAttributesT &&value)
Definition DialogState.h:79
AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const
DialogState & WithIntent(IntentT &&value)
Definition DialogState.h:64
const DialogAction & GetDialogAction() const
Definition DialogState.h:40
const Aws::Map< Aws::String, Aws::String > & GetSessionAttributes() const
Definition DialogState.h:76
void SetIntent(IntentT &&value)
Definition DialogState.h:59
AWS_LEXMODELSV2_API DialogState & operator=(Aws::Utils::Json::JsonView jsonValue)
const IntentOverride & GetIntent() const
Definition DialogState.h:56
DialogState & WithSessionAttributes(SessionAttributesT &&value)
Definition DialogState.h:84
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
Aws::Utils::Json::JsonValue JsonValue