AWS SDK for C++

AWS SDK for C++ Version 1.11.927

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/DevOpsAgentConfiguration.h>
16#include <aws/resiliencehubv2/model/PermissionModel.h>
17#include <aws/resiliencehubv2/model/ServiceReportConfiguration.h>
18
19#include <utility>
20
21namespace Aws {
22namespace resiliencehubv2 {
23namespace Model {
24
28 public:
29 AWS_RESILIENCEHUBV2_API CreateServiceRequest() = default;
30
31 // Service request name is the Operation name which will send this request out,
32 // each operation should has unique request name, so that we can get operation's name from this request.
33 // Note: this is not true for response, multiple operations may have the same response name,
34 // so we can not get operation's name from response.
35 inline virtual const char* GetServiceRequestName() const override { return "CreateService"; }
36
37 AWS_RESILIENCEHUBV2_API Aws::String SerializePayload() const override;
38
40
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>
50 SetName(std::forward<NameT>(value));
51 return *this;
52 }
54
56
57 inline const Aws::String& GetDescription() const { return m_description; }
58 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
59 template <typename DescriptionT = Aws::String>
60 void SetDescription(DescriptionT&& value) {
61 m_descriptionHasBeenSet = true;
62 m_description = std::forward<DescriptionT>(value);
63 }
64 template <typename DescriptionT = Aws::String>
65 CreateServiceRequest& WithDescription(DescriptionT&& value) {
66 SetDescription(std::forward<DescriptionT>(value));
67 return *this;
68 }
70
72
75 inline const Aws::Vector<AssociatedSystem>& GetAssociatedSystems() const { return m_associatedSystems; }
76 inline bool AssociatedSystemsHasBeenSet() const { return m_associatedSystemsHasBeenSet; }
77 template <typename AssociatedSystemsT = Aws::Vector<AssociatedSystem>>
78 void SetAssociatedSystems(AssociatedSystemsT&& value) {
79 m_associatedSystemsHasBeenSet = true;
80 m_associatedSystems = std::forward<AssociatedSystemsT>(value);
81 }
82 template <typename AssociatedSystemsT = Aws::Vector<AssociatedSystem>>
83 CreateServiceRequest& WithAssociatedSystems(AssociatedSystemsT&& value) {
84 SetAssociatedSystems(std::forward<AssociatedSystemsT>(value));
85 return *this;
86 }
87 template <typename AssociatedSystemsT = AssociatedSystem>
88 CreateServiceRequest& AddAssociatedSystems(AssociatedSystemsT&& value) {
89 m_associatedSystemsHasBeenSet = true;
90 m_associatedSystems.emplace_back(std::forward<AssociatedSystemsT>(value));
91 return *this;
92 }
94
96
97 inline const Aws::String& GetPolicyArn() const { return m_policyArn; }
98 inline bool PolicyArnHasBeenSet() const { return m_policyArnHasBeenSet; }
99 template <typename PolicyArnT = Aws::String>
100 void SetPolicyArn(PolicyArnT&& value) {
101 m_policyArnHasBeenSet = true;
102 m_policyArn = std::forward<PolicyArnT>(value);
103 }
104 template <typename PolicyArnT = Aws::String>
105 CreateServiceRequest& WithPolicyArn(PolicyArnT&& value) {
106 SetPolicyArn(std::forward<PolicyArnT>(value));
107 return *this;
108 }
110
112
115 inline const Aws::Vector<Aws::String>& GetRegions() const { return m_regions; }
116 inline bool RegionsHasBeenSet() const { return m_regionsHasBeenSet; }
117 template <typename RegionsT = Aws::Vector<Aws::String>>
118 void SetRegions(RegionsT&& value) {
119 m_regionsHasBeenSet = true;
120 m_regions = std::forward<RegionsT>(value);
121 }
122 template <typename RegionsT = Aws::Vector<Aws::String>>
124 SetRegions(std::forward<RegionsT>(value));
125 return *this;
126 }
127 template <typename RegionsT = Aws::String>
128 CreateServiceRequest& AddRegions(RegionsT&& value) {
129 m_regionsHasBeenSet = true;
130 m_regions.emplace_back(std::forward<RegionsT>(value));
131 return *this;
132 }
134
136
139 inline const PermissionModel& GetPermissionModel() const { return m_permissionModel; }
140 inline bool PermissionModelHasBeenSet() const { return m_permissionModelHasBeenSet; }
141 template <typename PermissionModelT = PermissionModel>
142 void SetPermissionModel(PermissionModelT&& value) {
143 m_permissionModelHasBeenSet = true;
144 m_permissionModel = std::forward<PermissionModelT>(value);
145 }
146 template <typename PermissionModelT = PermissionModel>
147 CreateServiceRequest& WithPermissionModel(PermissionModelT&& value) {
148 SetPermissionModel(std::forward<PermissionModelT>(value));
149 return *this;
150 }
152
154
155 inline DependencyDiscoveryInput GetDependencyDiscovery() const { return m_dependencyDiscovery; }
156 inline bool DependencyDiscoveryHasBeenSet() const { return m_dependencyDiscoveryHasBeenSet; }
158 m_dependencyDiscoveryHasBeenSet = true;
159 m_dependencyDiscovery = value;
160 }
166
168
169 inline const ServiceReportConfiguration& GetReportConfiguration() const { return m_reportConfiguration; }
170 inline bool ReportConfigurationHasBeenSet() const { return m_reportConfigurationHasBeenSet; }
171 template <typename ReportConfigurationT = ServiceReportConfiguration>
172 void SetReportConfiguration(ReportConfigurationT&& value) {
173 m_reportConfigurationHasBeenSet = true;
174 m_reportConfiguration = std::forward<ReportConfigurationT>(value);
175 }
176 template <typename ReportConfigurationT = ServiceReportConfiguration>
177 CreateServiceRequest& WithReportConfiguration(ReportConfigurationT&& value) {
178 SetReportConfiguration(std::forward<ReportConfigurationT>(value));
179 return *this;
180 }
182
184
185 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
186 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
187 template <typename KmsKeyIdT = Aws::String>
188 void SetKmsKeyId(KmsKeyIdT&& value) {
189 m_kmsKeyIdHasBeenSet = true;
190 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
191 }
192 template <typename KmsKeyIdT = Aws::String>
193 CreateServiceRequest& WithKmsKeyId(KmsKeyIdT&& value) {
194 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
195 return *this;
196 }
198
200
205 inline const DevOpsAgentConfiguration& GetDevOpsAgentConfiguration() const { return m_devOpsAgentConfiguration; }
206 inline bool DevOpsAgentConfigurationHasBeenSet() const { return m_devOpsAgentConfigurationHasBeenSet; }
207 template <typename DevOpsAgentConfigurationT = DevOpsAgentConfiguration>
208 void SetDevOpsAgentConfiguration(DevOpsAgentConfigurationT&& value) {
209 m_devOpsAgentConfigurationHasBeenSet = true;
210 m_devOpsAgentConfiguration = std::forward<DevOpsAgentConfigurationT>(value);
211 }
212 template <typename DevOpsAgentConfigurationT = DevOpsAgentConfiguration>
213 CreateServiceRequest& WithDevOpsAgentConfiguration(DevOpsAgentConfigurationT&& value) {
214 SetDevOpsAgentConfiguration(std::forward<DevOpsAgentConfigurationT>(value));
215 return *this;
216 }
218
220
221 inline const Aws::Map<Aws::String, Aws::String>& GetTags() const { return m_tags; }
222 inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
223 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
224 void SetTags(TagsT&& value) {
225 m_tagsHasBeenSet = true;
226 m_tags = std::forward<TagsT>(value);
227 }
228 template <typename TagsT = Aws::Map<Aws::String, Aws::String>>
230 SetTags(std::forward<TagsT>(value));
231 return *this;
232 }
233 template <typename TagsKeyT = Aws::String, typename TagsValueT = Aws::String>
234 CreateServiceRequest& AddTags(TagsKeyT&& key, TagsValueT&& value) {
235 m_tagsHasBeenSet = true;
236 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
237 return *this;
238 }
240
242
243 inline const Aws::String& GetClientToken() const { return m_clientToken; }
244 inline bool ClientTokenHasBeenSet() const { return m_clientTokenHasBeenSet; }
245 template <typename ClientTokenT = Aws::String>
246 void SetClientToken(ClientTokenT&& value) {
247 m_clientTokenHasBeenSet = true;
248 m_clientToken = std::forward<ClientTokenT>(value);
249 }
250 template <typename ClientTokenT = Aws::String>
251 CreateServiceRequest& WithClientToken(ClientTokenT&& value) {
252 SetClientToken(std::forward<ClientTokenT>(value));
253 return *this;
254 }
256 private:
257 Aws::String m_name;
258
259 Aws::String m_description;
260
261 Aws::Vector<AssociatedSystem> m_associatedSystems;
262
263 Aws::String m_policyArn;
264
265 Aws::Vector<Aws::String> m_regions;
266
267 PermissionModel m_permissionModel;
268
270
271 ServiceReportConfiguration m_reportConfiguration;
272
273 Aws::String m_kmsKeyId;
274
275 DevOpsAgentConfiguration m_devOpsAgentConfiguration;
276
278
280 bool m_nameHasBeenSet = false;
281 bool m_descriptionHasBeenSet = false;
282 bool m_associatedSystemsHasBeenSet = false;
283 bool m_policyArnHasBeenSet = false;
284 bool m_regionsHasBeenSet = false;
285 bool m_permissionModelHasBeenSet = false;
286 bool m_dependencyDiscoveryHasBeenSet = false;
287 bool m_reportConfigurationHasBeenSet = false;
288 bool m_kmsKeyIdHasBeenSet = false;
289 bool m_devOpsAgentConfigurationHasBeenSet = false;
290 bool m_tagsHasBeenSet = false;
291 bool m_clientTokenHasBeenSet = true;
292};
293
294} // namespace Model
295} // namespace resiliencehubv2
296} // 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
void SetDevOpsAgentConfiguration(DevOpsAgentConfigurationT &&value)
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 & WithDevOpsAgentConfiguration(DevOpsAgentConfigurationT &&value)
CreateServiceRequest & WithDescription(DescriptionT &&value)
CreateServiceRequest & WithAssociatedSystems(AssociatedSystemsT &&value)
CreateServiceRequest & WithPermissionModel(PermissionModelT &&value)
CreateServiceRequest & WithReportConfiguration(ReportConfigurationT &&value)
DependencyDiscoveryInput GetDependencyDiscovery() const
const ServiceReportConfiguration & GetReportConfiguration() const
const DevOpsAgentConfiguration & GetDevOpsAgentConfiguration() 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