AWS SDK for C++

AWS SDK for C++ Version 1.11.606

Loading...
Searching...
No Matches
DialogState.h
1
6#pragma once
7#include <aws/lexv2-models/LexModelsV2_EXPORTS.h>
8#include <aws/lexv2-models/model/DialogAction.h>
9#include <aws/lexv2-models/model/IntentOverride.h>
10#include <aws/core/utils/memory/stl/AWSMap.h>
11#include <aws/core/utils/memory/stl/AWSString.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 LexModelsV2
25{
26namespace Model
27{
28
36 {
37 public:
38 AWS_LEXMODELSV2_API DialogState() = default;
39 AWS_LEXMODELSV2_API DialogState(Aws::Utils::Json::JsonView jsonValue);
40 AWS_LEXMODELSV2_API DialogState& operator=(Aws::Utils::Json::JsonView jsonValue);
41 AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const;
42
43
45
46 inline const DialogAction& GetDialogAction() const { return m_dialogAction; }
47 inline bool DialogActionHasBeenSet() const { return m_dialogActionHasBeenSet; }
48 template<typename DialogActionT = DialogAction>
49 void SetDialogAction(DialogActionT&& value) { m_dialogActionHasBeenSet = true; m_dialogAction = std::forward<DialogActionT>(value); }
50 template<typename DialogActionT = DialogAction>
51 DialogState& WithDialogAction(DialogActionT&& value) { SetDialogAction(std::forward<DialogActionT>(value)); return *this;}
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) { m_intentHasBeenSet = true; m_intent = std::forward<IntentT>(value); }
60 template<typename IntentT = IntentOverride>
61 DialogState& WithIntent(IntentT&& value) { SetIntent(std::forward<IntentT>(value)); return *this;}
63
65
70 inline const Aws::Map<Aws::String, Aws::String>& GetSessionAttributes() const { return m_sessionAttributes; }
71 inline bool SessionAttributesHasBeenSet() const { return m_sessionAttributesHasBeenSet; }
72 template<typename SessionAttributesT = Aws::Map<Aws::String, Aws::String>>
73 void SetSessionAttributes(SessionAttributesT&& value) { m_sessionAttributesHasBeenSet = true; m_sessionAttributes = std::forward<SessionAttributesT>(value); }
74 template<typename SessionAttributesT = Aws::Map<Aws::String, Aws::String>>
75 DialogState& WithSessionAttributes(SessionAttributesT&& value) { SetSessionAttributes(std::forward<SessionAttributesT>(value)); return *this;}
76 template<typename SessionAttributesKeyT = Aws::String, typename SessionAttributesValueT = Aws::String>
77 DialogState& AddSessionAttributes(SessionAttributesKeyT&& key, SessionAttributesValueT&& value) {
78 m_sessionAttributesHasBeenSet = true; m_sessionAttributes.emplace(std::forward<SessionAttributesKeyT>(key), std::forward<SessionAttributesValueT>(value)); return *this;
79 }
81 private:
82
83 DialogAction m_dialogAction;
84 bool m_dialogActionHasBeenSet = false;
85
86 IntentOverride m_intent;
87 bool m_intentHasBeenSet = false;
88
89 Aws::Map<Aws::String, Aws::String> m_sessionAttributes;
90 bool m_sessionAttributesHasBeenSet = false;
91 };
92
93} // namespace Model
94} // namespace LexModelsV2
95} // namespace Aws
DialogState & WithDialogAction(DialogActionT &&value)
Definition DialogState.h:51
DialogState & AddSessionAttributes(SessionAttributesKeyT &&key, SessionAttributesValueT &&value)
Definition DialogState.h:77
void SetDialogAction(DialogActionT &&value)
Definition DialogState.h:49
AWS_LEXMODELSV2_API DialogState(Aws::Utils::Json::JsonView jsonValue)
AWS_LEXMODELSV2_API DialogState()=default
void SetSessionAttributes(SessionAttributesT &&value)
Definition DialogState.h:73
AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const
DialogState & WithIntent(IntentT &&value)
Definition DialogState.h:61
const DialogAction & GetDialogAction() const
Definition DialogState.h:46
const Aws::Map< Aws::String, Aws::String > & GetSessionAttributes() const
Definition DialogState.h:70
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:75
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
Aws::Utils::Json::JsonValue JsonValue