AWS SDK for C++

AWS SDK for C++ Version 1.11.816

Loading...
Searching...
No Matches
CreateServiceRequest.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/core/utils/memory/stl/AWSVector.h>
11#include <aws/resiliencehubv2/Resiliencehubv2Request.h>
12#include <aws/resiliencehubv2/Resiliencehubv2_EXPORTS.h>
13#include <aws/resiliencehubv2/model/AssociatedSystem.h>
14#include <aws/resiliencehubv2/model/DependencyDiscoveryInput.h>
15#include <aws/resiliencehubv2/model/PermissionModel.h>
16#include <aws/resiliencehubv2/model/ServiceReportConfiguration.h>
17
18#include <utility>
19
20namespace Aws {
21namespace resiliencehubv2 {
22namespace Model {
23
27 public:
28 AWS_RESILIENCEHUBV2_API CreateServiceRequest() = default;
29
30 // Service request name is the Operation name which will send this request out,
31 // each operation should has unique request name, so that we can get operation's name from this request.
32 // Note: this is not true for response, multiple operations may have the same response name,
33 // so we can not get operation's name from response.
34 inline virtual const char* GetServiceRequestName() const override { return "CreateService"; }
35
36 AWS_RESILIENCEHUBV2_API Aws::String SerializePayload() const override;
37
39
40 inline const Aws::String& GetName() const { return m_name; }
41 inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
42 template <typename NameT = Aws::String>
43 void SetName(NameT&& value) {
44 m_nameHasBeenSet = true;
45 m_name = std::forward<NameT>(value);
46 }
47 template <typename NameT = Aws::String>
49 SetName(std::forward<NameT>(value));
50 return *this;
51 }
53
55
56 inline const Aws::String& GetDescription() const { return m_description; }
57 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
58 template <typename DescriptionT = Aws::String>
59 void SetDescription(DescriptionT&& value) {
60 m_descriptionHasBeenSet = true;
61 m_description = std::forward<DescriptionT>(value);
62 }
63 template <typename DescriptionT = Aws::String>
64 CreateServiceRequest& WithDescription(DescriptionT&& value) {
65 SetDescription(std::forward<DescriptionT>(value));
66 return *this;
67 }
69
71
74 inline const Aws::Vector<AssociatedSystem>& GetAssociatedSystems() const { return m_associatedSystems; }
75 inline bool AssociatedSystemsHasBeenSet() const { return m_associatedSystemsHasBeenSet; }
76 template <typename AssociatedSystemsT = Aws::Vector<AssociatedSystem>>
77 void SetAssociatedSystems(AssociatedSystemsT&& value) {
78 m_associatedSystemsHasBeenSet = true;
79 m_associatedSystems = std::forward<AssociatedSystemsT>(value);
80 }
81 template <typename AssociatedSystemsT = Aws::Vector<AssociatedSystem>>
82 CreateServiceRequest& WithAssociatedSystems(AssociatedSystemsT&& value) {
83 SetAssociatedSystems(std::forward<AssociatedSystemsT>(value));
84 return *this;
85 }
86 template <typename AssociatedSystemsT = AssociatedSystem>
87 CreateServiceRequest& AddAssociatedSystems(AssociatedSystemsT&& value) {
88 m_associatedSystemsHasBeenSet = true;
89 m_associatedSystems.emplace_back(std::forward<AssociatedSystemsT>(value));
90 return *this;
91 }
93
95
96 inline const Aws::String& GetPolicyArn() const { return m_policyArn; }
97 inline bool PolicyArnHasBeenSet() const { return m_policyArnHasBeenSet; }
98 template <typename PolicyArnT = Aws::String>
99 void SetPolicyArn(PolicyArnT&& value) {
100 m_policyArnHasBeenSet = true;
101 m_policyArn = std::forward<PolicyArnT>(value);
102 }
103 template <typename PolicyArnT = Aws::String>
104 CreateServiceRequest& WithPolicyArn(PolicyArnT&& value) {
105 SetPolicyArn(std::forward<PolicyArnT>(value));
106 return *this;
107 }
109
111
114 inline const Aws::Vector<Aws::String>& GetRegions() const { return m_regions; }
115 inline bool RegionsHasBeenSet() const { return m_regionsHasBeenSet; }
116 template <typename RegionsT = Aws::Vector<Aws::String>>
117 void SetRegions(RegionsT&& value) {
118 m_regionsHasBeenSet = true;
119 m_regions = std::forward<RegionsT>(value);
120 }
121 template <typename RegionsT = Aws::Vector<Aws::String>>
123 SetRegions(std::forward<RegionsT>(value));
124 return *this;
125 }
126 template <typename RegionsT = Aws::String>
127 CreateServiceRequest& AddRegions(RegionsT&& value) {
128 m_regionsHasBeenSet = true;
129 m_regions.emplace_back(std::forward<RegionsT>(value));
130 return *this;
131 }
133
135
138 inline const PermissionModel& GetPermissionModel() const { return m_permissionModel; }
139 inline bool PermissionModelHasBeenSet() const { return m_permissionModelHasBeenSet; }
140 template <typename PermissionModelT = PermissionModel>
141 void SetPermissionModel(PermissionModelT&& value) {
142 m_permissionModelHasBeenSet = true;
143 m_permissionModel = std::forward<PermissionModelT>(value);
144 }
145 template <typename PermissionModelT = PermissionModel>
146 CreateServiceRequest& WithPermissionModel(PermissionModelT&& value) {
147 SetPermissionModel(std::forward<PermissionModelT>(value));
148 return *this;
149 }
151
153
154 inline DependencyDiscoveryInput GetDependencyDiscovery() const { return m_dependencyDiscovery; }
155 inline bool DependencyDiscoveryHasBeenSet() const { return m_dependencyDiscoveryHasBeenSet; }
157 m_dependencyDiscoveryHasBeenSet = true;
158 m_dependencyDiscovery = value;
159 }
162 return *this;
163 }
165
167
168 inline const ServiceReportConfiguration& GetReportConfiguration() const { return m_reportConfiguration; }
169 inline bool ReportConfigurationHasBeenSet() const { return m_reportConfigurationHasBeenSet; }
170 template <typename ReportConfigurationT = ServiceReportConfiguration>
171 void SetReportConfiguration(ReportConfigurationT&& value) {
172 m_reportConfigurationHasBeenSet = true;
173 m_reportConfiguration = std::forward<ReportConfigurationT>(value);
174 }
175 template <typename ReportConfigurationT = ServiceReportConfiguration>
176 CreateServiceRequest& WithReportConfiguration(ReportConfigurationT&& value) {
177 SetReportConfiguration(std::forward<ReportConfigurationT>(value));
178 return *this;
179 }
181
183
184 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
185 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
186 template <typename KmsKeyIdT = Aws::String>
187 void SetKmsKeyId(KmsKeyIdT&& value) {
188 m_kmsKeyIdHasBeenSet = true;
189 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
190 }
191 template <typename KmsKeyIdT = Aws::String>
192 CreateServiceRequest& WithKmsKeyId(KmsKeyIdT&& value) {
193 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
194 return *this;
195 }
197
199
200 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
201 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
202 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
203 void SetTags(TagsT&& value) {
204 m_tagsHasBeenSet = true;
205 m_tags = std::forward<TagsT>(value);
206 }
207 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
209 SetTags(std::forward<TagsT>(value));
210 return *this;
211 }
212 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
213 CreateServiceRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
214 m_tagsHasBeenSet = true;
215 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
216 return *this;
217 }
219
221
222 inline const Aws::String& GetClientToken() const { return m_clientToken; }
223 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
224 template <typename ClientTokenT = Aws::String>
225 void SetClientToken(ClientTokenT&& value) {
226 m_clientTokenHasBeenSet = true;
227 m_clientToken = std::forward<ClientTokenT>(value);
228 }
229 template <typename ClientTokenT = Aws::String>
230 CreateServiceRequest& WithClientToken(ClientTokenT&& value) {
231 SetClientToken(std::forward<ClientTokenT>(value));
232 return *this;
233 }
235 private:
236 Aws::String m_name;
237
238 Aws::String m_description;
239
240 Aws::Vector<AssociatedSystem> m_associatedSystems;
241
242 Aws::String m_policyArn;
243
244 Aws::Vector<Aws::String> m_regions;
245
246 PermissionModel m_permissionModel;
247
249
250 ServiceReportConfiguration m_reportConfiguration;
251
252 Aws::String m_kmsKeyId;
253
255
257 bool m_nameHasBeenSet = false;
258 bool m_descriptionHasBeenSet = false;
259 bool m_associatedSystemsHasBeenSet = false;
260 bool m_policyArnHasBeenSet = false;
261 bool m_regionsHasBeenSet = false;
262 bool m_permissionModelHasBeenSet = false;
263 bool m_dependencyDiscoveryHasBeenSet = false;
264 bool m_reportConfigurationHasBeenSet = false;
265 bool m_kmsKeyIdHasBeenSet = false;
266 bool m_tagsHasBeenSet = false;
267 bool m_clientTokenHasBeenSet = true;
268};
269
270} // namespace Model
271} // namespace resiliencehubv2
272} // namespace Aws
static Aws::Utils::UUID PseudoRandomUUID()
void SetDependencyDiscovery(DependencyDiscoveryInput value)
CreateServiceRequest & WithKmsKeyId(KmsKeyIdT &&value)
CreateServiceRequest & AddRegions(RegionsT &&value)
CreateServiceRequest & WithPolicyArn(PolicyArnT &&value)
CreateServiceRequest & WithTags(TagsT &&value)
const Aws::Vector< Aws::String > & GetRegions() const
void SetReportConfiguration(ReportConfigurationT &&value)
AWS_RESILIENCEHUBV2_API CreateServiceRequest()=default
CreateServiceRequest & WithName(NameT &&value)
virtual const char * GetServiceRequestName() const override
CreateServiceRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateServiceRequest & AddAssociatedSystems(AssociatedSystemsT &&value)
const Aws::Vector< AssociatedSystem > & GetAssociatedSystems() const
CreateServiceRequest & WithDependencyDiscovery(DependencyDiscoveryInput value)
CreateServiceRequest & WithDescription(DescriptionT &&value)
CreateServiceRequest & WithAssociatedSystems(AssociatedSystemsT &&value)
CreateServiceRequest & WithPermissionModel(PermissionModelT &&value)
CreateServiceRequest & WithReportConfiguration(ReportConfigurationT &&value)
DependencyDiscoveryInput GetDependencyDiscovery() const
const ServiceReportConfiguration & GetReportConfiguration() const
CreateServiceRequest & WithRegions(RegionsT &&value)
CreateServiceRequest & WithClientToken(ClientTokenT &&value)
void SetAssociatedSystems(AssociatedSystemsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetTags() const
AWS_RESILIENCEHUBV2_API Aws::String SerializePayload() const override
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
std::vector< T, Aws::Allocator< T > > Vector