AWS SDK for C++

AWS SDK for C++ Version 1.11.817

Loading...
Searching...
No Matches
CreateSystemRequest.h
1
6#pragma once
7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/resiliencehubv2/Resiliencehubv2Request.h>
11#include <aws/resiliencehubv2/Resiliencehubv2_EXPORTS.h>
12
13#include <utility>
14
15namespace Aws {
16namespace resiliencehubv2 {
17namespace Model {
18
22 public:
23 AWS_RESILIENCEHUBV2_API CreateSystemRequest() = default;
24
25 // Service request name is the Operation name which will send this request out,
26 // each operation should has unique request name, so that we can get operation's name from this request.
27 // Note: this is not true for response, multiple operations may have the same response name,
28 // so we can not get operation's name from response.
29 inline virtual const char* GetServiceRequestName() const override { return "CreateSystem"; }
30
31 AWS_RESILIENCEHUBV2_API Aws::String SerializePayload() const override;
32
34
35 inline const Aws::String& GetName() const { return m_name; }
36 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
37 template <typename NameT = Aws::String>
38 void SetName(NameT&& value) {
39 m_nameHasBeenSet = true;
40 m_name = std::forward<NameT>(value);
41 }
42 template <typename NameT = Aws::String>
43 CreateSystemRequest& WithName(NameT&& value) {
44 SetName(std::forward<NameT>(value));
45 return *this;
46 }
48
50
51 inline const Aws::String& GetDescription() const { return m_description; }
52 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
53 template <typename DescriptionT = Aws::String>
54 void SetDescription(DescriptionT&& value) {
55 m_descriptionHasBeenSet = true;
56 m_description = std::forward<DescriptionT>(value);
57 }
58 template <typename DescriptionT = Aws::String>
59 CreateSystemRequest& WithDescription(DescriptionT&& value) {
60 SetDescription(std::forward<DescriptionT>(value));
61 return *this;
62 }
64
66
69 inline bool GetSharingEnabled() const { return m_sharingEnabled; }
70 inline bool SharingEnabledHasBeenSet() const { return m_sharingEnabledHasBeenSet; }
71 inline void SetSharingEnabled(bool value) {
72 m_sharingEnabledHasBeenSet = true;
73 m_sharingEnabled = value;
74 }
76 SetSharingEnabled(value);
77 return *this;
78 }
80
82
83 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
84 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
85 template <typename KmsKeyIdT = Aws::String>
86 void SetKmsKeyId(KmsKeyIdT&& value) {
87 m_kmsKeyIdHasBeenSet = true;
88 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
89 }
90 template <typename KmsKeyIdT = Aws::String>
91 CreateSystemRequest& WithKmsKeyId(KmsKeyIdT&& value) {
92 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
93 return *this;
94 }
96
98
99 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
100 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
101 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
102 void SetTags(TagsT&& value) {
103 m_tagsHasBeenSet = true;
104 m_tags = std::forward<TagsT>(value);
105 }
106 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
108 SetTags(std::forward<TagsT>(value));
109 return *this;
110 }
111 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
112 CreateSystemRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
113 m_tagsHasBeenSet = true;
114 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
115 return *this;
116 }
118
120
121 inline const Aws::String& GetClientToken() const { return m_clientToken; }
122 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
123 template <typename ClientTokenT = Aws::String>
124 void SetClientToken(ClientTokenT&& value) {
125 m_clientTokenHasBeenSet = true;
126 m_clientToken = std::forward<ClientTokenT>(value);
127 }
128 template <typename ClientTokenT = Aws::String>
129 CreateSystemRequest& WithClientToken(ClientTokenT&& value) {
130 SetClientToken(std::forward<ClientTokenT>(value));
131 return *this;
132 }
134 private:
135 Aws::String m_name;
136
137 Aws::String m_description;
138
139 bool m_sharingEnabled{false};
140
141 Aws::String m_kmsKeyId;
142
144
146 bool m_nameHasBeenSet = false;
147 bool m_descriptionHasBeenSet = false;
148 bool m_sharingEnabledHasBeenSet = false;
149 bool m_kmsKeyIdHasBeenSet = false;
150 bool m_tagsHasBeenSet = false;
151 bool m_clientTokenHasBeenSet = true;
152};
153
154} // namespace Model
155} // namespace resiliencehubv2
156} // namespace Aws
static Aws::Utils::UUID PseudoRandomUUID()
virtual const char * GetServiceRequestName() const override
CreateSystemRequest & WithKmsKeyId(KmsKeyIdT &&value)
CreateSystemRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
AWS_RESILIENCEHUBV2_API Aws::String SerializePayload() const override
CreateSystemRequest & WithDescription(DescriptionT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateSystemRequest & WithSharingEnabled(bool value)
CreateSystemRequest & WithName(NameT &&value)
CreateSystemRequest & WithClientToken(ClientTokenT &&value)
CreateSystemRequest & WithTags(TagsT &&value)
AWS_RESILIENCEHUBV2_API CreateSystemRequest()=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