AWS SDK for C++

AWS SDK for C++ Version 1.11.716

Loading...
Searching...
No Matches
CopySnapshotRequest.h
1
6#pragma once
7#include <aws/core/utils/memory/stl/AWSString.h>
8#include <aws/core/utils/memory/stl/AWSVector.h>
9#include <aws/ec2/EC2Request.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/TagSpecification.h>
12
13#include <utility>
14
15namespace Aws {
16namespace EC2 {
17namespace Model {
18
22 public:
23 AWS_EC2_API CopySnapshotRequest() = 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 "CopySnapshot"; }
30
31 AWS_EC2_API Aws::String SerializePayload() const override;
32
33 protected:
34 AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI& uri) const override;
35
36 public:
38
41 inline const Aws::String& GetDescription() const { return m_description; }
42 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
43 template <typename DescriptionT = Aws::String>
44 void SetDescription(DescriptionT&& value) {
45 m_descriptionHasBeenSet = true;
46 m_description = std::forward<DescriptionT>(value);
47 }
48 template <typename DescriptionT = Aws::String>
49 CopySnapshotRequest& WithDescription(DescriptionT&& value) {
50 SetDescription(std::forward<DescriptionT>(value));
51 return *this;
52 }
54
56
64 inline const Aws::String& GetDestinationOutpostArn() const { return m_destinationOutpostArn; }
65 inline bool DestinationOutpostArnHasBeenSet() const { return m_destinationOutpostArnHasBeenSet; }
66 template <typename DestinationOutpostArnT = Aws::String>
67 void SetDestinationOutpostArn(DestinationOutpostArnT&& value) {
68 m_destinationOutpostArnHasBeenSet = true;
69 m_destinationOutpostArn = std::forward<DestinationOutpostArnT>(value);
70 }
71 template <typename DestinationOutpostArnT = Aws::String>
72 CopySnapshotRequest& WithDestinationOutpostArn(DestinationOutpostArnT&& value) {
73 SetDestinationOutpostArn(std::forward<DestinationOutpostArnT>(value));
74 return *this;
75 }
77
79
89 inline const Aws::String& GetDestinationRegion() const { return m_destinationRegion; }
90 inline bool DestinationRegionHasBeenSet() const { return m_destinationRegionHasBeenSet; }
91 template <typename DestinationRegionT = Aws::String>
92 void SetDestinationRegion(DestinationRegionT&& value) {
93 m_destinationRegionHasBeenSet = true;
94 m_destinationRegion = std::forward<DestinationRegionT>(value);
95 }
96 template <typename DestinationRegionT = Aws::String>
97 CopySnapshotRequest& WithDestinationRegion(DestinationRegionT&& value) {
98 SetDestinationRegion(std::forward<DestinationRegionT>(value));
99 return *this;
100 }
102
104
113 inline bool GetEncrypted() const { return m_encrypted; }
114 inline bool EncryptedHasBeenSet() const { return m_encryptedHasBeenSet; }
115 inline void SetEncrypted(bool value) {
116 m_encryptedHasBeenSet = true;
117 m_encrypted = value;
118 }
119 inline CopySnapshotRequest& WithEncrypted(bool value) {
120 SetEncrypted(value);
121 return *this;
122 }
124
126
141 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
142 inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; }
143 template <typename KmsKeyIdT = Aws::String>
144 void SetKmsKeyId(KmsKeyIdT&& value) {
145 m_kmsKeyIdHasBeenSet = true;
146 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
147 }
148 template <typename KmsKeyIdT = Aws::String>
149 CopySnapshotRequest& WithKmsKeyId(KmsKeyIdT&& value) {
150 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
151 return *this;
152 }
154
156
174 inline const Aws::String& GetPresignedUrl() const { return m_presignedUrl; }
175 inline bool PresignedUrlHasBeenSet() const { return m_presignedUrlHasBeenSet; }
176 template <typename PresignedUrlT = Aws::String>
177 void SetPresignedUrl(PresignedUrlT&& value) {
178 m_presignedUrlHasBeenSet = true;
179 m_presignedUrl = std::forward<PresignedUrlT>(value);
180 }
181 template <typename PresignedUrlT = Aws::String>
182 CopySnapshotRequest& WithPresignedUrl(PresignedUrlT&& value) {
183 SetPresignedUrl(std::forward<PresignedUrlT>(value));
184 return *this;
185 }
187
189
192 inline const Aws::String& GetSourceRegion() const { return m_sourceRegion; }
193 inline bool SourceRegionHasBeenSet() const { return m_sourceRegionHasBeenSet; }
194 template <typename SourceRegionT = Aws::String>
195 void SetSourceRegion(SourceRegionT&& value) {
196 m_sourceRegionHasBeenSet = true;
197 m_sourceRegion = std::forward<SourceRegionT>(value);
198 }
199 template <typename SourceRegionT = Aws::String>
200 CopySnapshotRequest& WithSourceRegion(SourceRegionT&& value) {
201 SetSourceRegion(std::forward<SourceRegionT>(value));
202 return *this;
203 }
205
207
210 inline const Aws::String& GetSourceSnapshotId() const { return m_sourceSnapshotId; }
211 inline bool SourceSnapshotIdHasBeenSet() const { return m_sourceSnapshotIdHasBeenSet; }
212 template <typename SourceSnapshotIdT = Aws::String>
213 void SetSourceSnapshotId(SourceSnapshotIdT&& value) {
214 m_sourceSnapshotIdHasBeenSet = true;
215 m_sourceSnapshotId = std::forward<SourceSnapshotIdT>(value);
216 }
217 template <typename SourceSnapshotIdT = Aws::String>
218 CopySnapshotRequest& WithSourceSnapshotId(SourceSnapshotIdT&& value) {
219 SetSourceSnapshotId(std::forward<SourceSnapshotIdT>(value));
220 return *this;
221 }
223
225
228 inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const { return m_tagSpecifications; }
229 inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
230 template <typename TagSpecificationsT = Aws::Vector<TagSpecification>>
231 void SetTagSpecifications(TagSpecificationsT&& value) {
232 m_tagSpecificationsHasBeenSet = true;
233 m_tagSpecifications = std::forward<TagSpecificationsT>(value);
234 }
235 template <typename TagSpecificationsT = Aws::Vector<TagSpecification>>
236 CopySnapshotRequest& WithTagSpecifications(TagSpecificationsT&& value) {
237 SetTagSpecifications(std::forward<TagSpecificationsT>(value));
238 return *this;
239 }
240 template <typename TagSpecificationsT = TagSpecification>
241 CopySnapshotRequest& AddTagSpecifications(TagSpecificationsT&& value) {
242 m_tagSpecificationsHasBeenSet = true;
243 m_tagSpecifications.emplace_back(std::forward<TagSpecificationsT>(value));
244 return *this;
245 }
247
249
258 inline int GetCompletionDurationMinutes() const { return m_completionDurationMinutes; }
259 inline bool CompletionDurationMinutesHasBeenSet() const { return m_completionDurationMinutesHasBeenSet; }
260 inline void SetCompletionDurationMinutes(int value) {
261 m_completionDurationMinutesHasBeenSet = true;
262 m_completionDurationMinutes = value;
263 }
266 return *this;
267 }
269
271
276 inline const Aws::String& GetDestinationAvailabilityZone() const { return m_destinationAvailabilityZone; }
277 inline bool DestinationAvailabilityZoneHasBeenSet() const { return m_destinationAvailabilityZoneHasBeenSet; }
278 template <typename DestinationAvailabilityZoneT = Aws::String>
279 void SetDestinationAvailabilityZone(DestinationAvailabilityZoneT&& value) {
280 m_destinationAvailabilityZoneHasBeenSet = true;
281 m_destinationAvailabilityZone = std::forward<DestinationAvailabilityZoneT>(value);
282 }
283 template <typename DestinationAvailabilityZoneT = Aws::String>
284 CopySnapshotRequest& WithDestinationAvailabilityZone(DestinationAvailabilityZoneT&& value) {
285 SetDestinationAvailabilityZone(std::forward<DestinationAvailabilityZoneT>(value));
286 return *this;
287 }
289
291
297 inline bool GetDryRun() const { return m_dryRun; }
298 inline bool DryRunHasBeenSet() const { return m_dryRunHasBeenSet; }
299 inline void SetDryRun(bool value) {
300 m_dryRunHasBeenSet = true;
301 m_dryRun = value;
302 }
303 inline CopySnapshotRequest& WithDryRun(bool value) {
304 SetDryRun(value);
305 return *this;
306 }
308 private:
309 Aws::String m_description;
310
311 Aws::String m_destinationOutpostArn;
312
313 Aws::String m_destinationRegion;
314
315 bool m_encrypted{false};
316
317 Aws::String m_kmsKeyId;
318
319 Aws::String m_presignedUrl;
320
321 Aws::String m_sourceRegion;
322
323 Aws::String m_sourceSnapshotId;
324
325 Aws::Vector<TagSpecification> m_tagSpecifications;
326
327 int m_completionDurationMinutes{0};
328
329 Aws::String m_destinationAvailabilityZone;
330
331 bool m_dryRun{false};
332 bool m_descriptionHasBeenSet = false;
333 bool m_destinationOutpostArnHasBeenSet = false;
334 bool m_destinationRegionHasBeenSet = false;
335 bool m_encryptedHasBeenSet = false;
336 bool m_kmsKeyIdHasBeenSet = false;
337 bool m_presignedUrlHasBeenSet = false;
338 bool m_sourceRegionHasBeenSet = false;
339 bool m_sourceSnapshotIdHasBeenSet = false;
340 bool m_tagSpecificationsHasBeenSet = false;
341 bool m_completionDurationMinutesHasBeenSet = false;
342 bool m_destinationAvailabilityZoneHasBeenSet = false;
343 bool m_dryRunHasBeenSet = false;
344};
345
346} // namespace Model
347} // namespace EC2
348} // namespace Aws
void SetDestinationOutpostArn(DestinationOutpostArnT &&value)
const Aws::String & GetPresignedUrl() const
CopySnapshotRequest & AddTagSpecifications(TagSpecificationsT &&value)
void SetDestinationRegion(DestinationRegionT &&value)
void SetSourceRegion(SourceRegionT &&value)
void SetPresignedUrl(PresignedUrlT &&value)
void SetTagSpecifications(TagSpecificationsT &&value)
CopySnapshotRequest & WithDescription(DescriptionT &&value)
AWS_EC2_API CopySnapshotRequest()=default
CopySnapshotRequest & WithDryRun(bool value)
CopySnapshotRequest & WithSourceRegion(SourceRegionT &&value)
CopySnapshotRequest & WithKmsKeyId(KmsKeyIdT &&value)
CopySnapshotRequest & WithDestinationAvailabilityZone(DestinationAvailabilityZoneT &&value)
CopySnapshotRequest & WithDestinationOutpostArn(DestinationOutpostArnT &&value)
const Aws::String & GetSourceSnapshotId() const
CopySnapshotRequest & WithPresignedUrl(PresignedUrlT &&value)
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
CopySnapshotRequest & WithDestinationRegion(DestinationRegionT &&value)
CopySnapshotRequest & WithSourceSnapshotId(SourceSnapshotIdT &&value)
const Aws::String & GetSourceRegion() const
virtual const char * GetServiceRequestName() const override
AWS_EC2_API Aws::String SerializePayload() const override
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
void SetDescription(DescriptionT &&value)
CopySnapshotRequest & WithEncrypted(bool value)
const Aws::String & GetDescription() const
const Aws::String & GetDestinationRegion() const
const Aws::String & GetDestinationAvailabilityZone() const
CopySnapshotRequest & WithCompletionDurationMinutes(int value)
const Aws::String & GetKmsKeyId() const
void SetDestinationAvailabilityZone(DestinationAvailabilityZoneT &&value)
void SetSourceSnapshotId(SourceSnapshotIdT &&value)
CopySnapshotRequest & WithTagSpecifications(TagSpecificationsT &&value)
const Aws::String & GetDestinationOutpostArn() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector