AWS SDK for C++

AWS SDK for C++ Version 1.11.607

Loading...
Searching...
No Matches
Intent.h
1
6#pragma once
7#include <aws/lexv2-runtime/LexRuntimeV2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSMap.h>
10#include <aws/lexv2-runtime/model/IntentState.h>
11#include <aws/lexv2-runtime/model/ConfirmationState.h>
12#include <aws/lexv2-runtime/model/Slot.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 LexRuntimeV2
26{
27namespace Model
28{
29
36 class Intent
37 {
38 public:
39 AWS_LEXRUNTIMEV2_API Intent() = default;
40 AWS_LEXRUNTIMEV2_API Intent(Aws::Utils::Json::JsonView jsonValue);
41 AWS_LEXRUNTIMEV2_API Intent& operator=(Aws::Utils::Json::JsonView jsonValue);
42 AWS_LEXRUNTIMEV2_API Aws::Utils::Json::JsonValue Jsonize() const;
43
44
46
49 inline const Aws::String& GetName() const { return m_name; }
50 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
51 template<typename NameT = Aws::String>
52 void SetName(NameT&& value) { m_nameHasBeenSet = true; m_name = std::forward<NameT>(value); }
53 template<typename NameT = Aws::String>
54 Intent& WithName(NameT&& value) { SetName(std::forward<NameT>(value)); return *this;}
56
58
62 inline const Aws::Map<Aws::String, Slot>& GetSlots() const { return m_slots; }
63 inline bool SlotsHasBeenSet() const { return m_slotsHasBeenSet; }
64 template<typename SlotsT = Aws::Map<Aws::String, Slot>>
65 void SetSlots(SlotsT&& value) { m_slotsHasBeenSet = true; m_slots = std::forward<SlotsT>(value); }
66 template<typename SlotsT = Aws::Map<Aws::String, Slot>>
67 Intent& WithSlots(SlotsT&& value) { SetSlots(std::forward<SlotsT>(value)); return *this;}
68 template<typename SlotsKeyT = Aws::String, typename SlotsValueT = Slot>
69 Intent& AddSlots(SlotsKeyT&& key, SlotsValueT&& value) {
70 m_slotsHasBeenSet = true; m_slots.emplace(std::forward<SlotsKeyT>(key), std::forward<SlotsValueT>(value)); return *this;
71 }
73
75
88 inline IntentState GetState() const { return m_state; }
89 inline bool StateHasBeenSet() const { return m_stateHasBeenSet; }
90 inline void SetState(IntentState value) { m_stateHasBeenSet = true; m_state = value; }
91 inline Intent& WithState(IntentState value) { SetState(value); return *this;}
93
95
100 inline ConfirmationState GetConfirmationState() const { return m_confirmationState; }
101 inline bool ConfirmationStateHasBeenSet() const { return m_confirmationStateHasBeenSet; }
102 inline void SetConfirmationState(ConfirmationState value) { m_confirmationStateHasBeenSet = true; m_confirmationState = value; }
105 private:
106
107 Aws::String m_name;
108 bool m_nameHasBeenSet = false;
109
111 bool m_slotsHasBeenSet = false;
112
114 bool m_stateHasBeenSet = false;
115
117 bool m_confirmationStateHasBeenSet = false;
118 };
119
120} // namespace Model
121} // namespace LexRuntimeV2
122} // namespace Aws
void SetName(NameT &&value)
Definition Intent.h:52
ConfirmationState GetConfirmationState() const
Definition Intent.h:100
IntentState GetState() const
Definition Intent.h:88
AWS_LEXRUNTIMEV2_API Intent(Aws::Utils::Json::JsonView jsonValue)
AWS_LEXRUNTIMEV2_API Intent()=default
AWS_LEXRUNTIMEV2_API Intent & operator=(Aws::Utils::Json::JsonView jsonValue)
const Aws::String & GetName() const
Definition Intent.h:49
void SetState(IntentState value)
Definition Intent.h:90
Intent & WithName(NameT &&value)
Definition Intent.h:54
Intent & WithConfirmationState(ConfirmationState value)
Definition Intent.h:103
Intent & WithState(IntentState value)
Definition Intent.h:91
void SetSlots(SlotsT &&value)
Definition Intent.h:65
bool ConfirmationStateHasBeenSet() const
Definition Intent.h:101
void SetConfirmationState(ConfirmationState value)
Definition Intent.h:102
Intent & WithSlots(SlotsT &&value)
Definition Intent.h:67
Intent & AddSlots(SlotsKeyT &&key, SlotsValueT &&value)
Definition Intent.h:69
AWS_LEXRUNTIMEV2_API Aws::Utils::Json::JsonValue Jsonize() const
const Aws::Map< Aws::String, Slot > & GetSlots() const
Definition Intent.h:62
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Aws::Utils::Json::JsonValue JsonValue