AWS SDK for C++

AWS SDK for C++ Version 1.11.747

Loading...
Searching...
No Matches
IntentOverride.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/SlotValueOverride.h>
11
12#include <utility>
13
14namespace Aws {
15namespace Utils {
16namespace Json {
17class JsonValue;
18class JsonView;
19} // namespace Json
20} // namespace Utils
21namespace LexModelsV2 {
22namespace Model {
23
31 public:
32 AWS_LEXMODELSV2_API IntentOverride() = default;
33 AWS_LEXMODELSV2_API IntentOverride(Aws::Utils::Json::JsonView jsonValue);
34 AWS_LEXMODELSV2_API IntentOverride& operator=(Aws::Utils::Json::JsonView jsonValue);
35 AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const;
36
38
41 inline const Aws::String& GetName() const { return m_name; }
42 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
43 template <typename NameT = Aws::String>
44 void SetName(NameT&& value) {
45 m_nameHasBeenSet = true;
46 m_name = std::forward<NameT>(value);
47 }
48 template <typename NameT = Aws::String>
49 IntentOverride& WithName(NameT&& value) {
50 SetName(std::forward<NameT>(value));
51 return *this;
52 }
54
56
61 inline const Aws::Map<Aws::String, SlotValueOverride>& GetSlots() const { return m_slots; }
62 inline bool SlotsHasBeenSet() const { return m_slotsHasBeenSet; }
63 template <typename SlotsT = Aws::Map<Aws::String, SlotValueOverride>>
64 void SetSlots(SlotsT&& value) {
65 m_slotsHasBeenSet = true;
66 m_slots = std::forward<SlotsT>(value);
67 }
68 template <typename SlotsT = Aws::Map<Aws::String, SlotValueOverride>>
69 IntentOverride& WithSlots(SlotsT&& value) {
70 SetSlots(std::forward<SlotsT>(value));
71 return *this;
72 }
73 template <typename SlotsKeyT = Aws::String, typename SlotsValueT = SlotValueOverride>
74 IntentOverride& AddSlots(SlotsKeyT&& key, SlotsValueT&& value) {
75 m_slotsHasBeenSet = true;
76 m_slots.emplace(std::forward<SlotsKeyT>(key), std::forward<SlotsValueT>(value));
77 return *this;
78 }
80 private:
81 Aws::String m_name;
82
84 bool m_nameHasBeenSet = false;
85 bool m_slotsHasBeenSet = false;
86};
87
88} // namespace Model
89} // namespace LexModelsV2
90} // namespace Aws
const Aws::Map< Aws::String, SlotValueOverride > & GetSlots() const
IntentOverride & WithSlots(SlotsT &&value)
IntentOverride & AddSlots(SlotsKeyT &&key, SlotsValueT &&value)
AWS_LEXMODELSV2_API Aws::Utils::Json::JsonValue Jsonize() const
IntentOverride & WithName(NameT &&value)
const Aws::String & GetName() const
AWS_LEXMODELSV2_API IntentOverride(Aws::Utils::Json::JsonView jsonValue)
AWS_LEXMODELSV2_API IntentOverride & operator=(Aws::Utils::Json::JsonView jsonValue)
AWS_LEXMODELSV2_API IntentOverride()=default
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