AWS SDK for C++

AWS SDK for C++ Version 1.11.717

Loading...
Searching...
No Matches
CreateVolumeResponse.h
1
6#pragma once
7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2_EXPORTS.h>
11#include <aws/ec2/model/OperatorResponse.h>
12#include <aws/ec2/model/ResponseMetadata.h>
13#include <aws/ec2/model/SSEType.h>
14#include <aws/ec2/model/Tag.h>
15#include <aws/ec2/model/VolumeAttachment.h>
16#include <aws/ec2/model/VolumeState.h>
17#include <aws/ec2/model/VolumeType.h>
18
19#include <utility>
20
21namespace Aws {
22template <typename RESULT_TYPE>
23class AmazonWebServiceResult;
24
25namespace Utils {
26namespace Xml {
27class XmlDocument;
28} // namespace Xml
29} // namespace Utils
30namespace EC2 {
31namespace Model {
38 public:
39 AWS_EC2_API CreateVolumeResponse() = default;
42
44
47 inline const Aws::String& GetAvailabilityZoneId() const { return m_availabilityZoneId; }
48 template <typename AvailabilityZoneIdT = Aws::String>
49 void SetAvailabilityZoneId(AvailabilityZoneIdT&& value) {
50 m_availabilityZoneIdHasBeenSet = true;
51 m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value);
52 }
53 template <typename AvailabilityZoneIdT = Aws::String>
54 CreateVolumeResponse& WithAvailabilityZoneId(AvailabilityZoneIdT&& value) {
55 SetAvailabilityZoneId(std::forward<AvailabilityZoneIdT>(value));
56 return *this;
57 }
59
61
64 inline const Aws::String& GetOutpostArn() const { return m_outpostArn; }
65 template <typename OutpostArnT = Aws::String>
66 void SetOutpostArn(OutpostArnT&& value) {
67 m_outpostArnHasBeenSet = true;
68 m_outpostArn = std::forward<OutpostArnT>(value);
69 }
70 template <typename OutpostArnT = Aws::String>
71 CreateVolumeResponse& WithOutpostArn(OutpostArnT&& value) {
72 SetOutpostArn(std::forward<OutpostArnT>(value));
73 return *this;
74 }
76
78
82 inline const Aws::String& GetSourceVolumeId() const { return m_sourceVolumeId; }
83 template <typename SourceVolumeIdT = Aws::String>
84 void SetSourceVolumeId(SourceVolumeIdT&& value) {
85 m_sourceVolumeIdHasBeenSet = true;
86 m_sourceVolumeId = std::forward<SourceVolumeIdT>(value);
87 }
88 template <typename SourceVolumeIdT = Aws::String>
89 CreateVolumeResponse& WithSourceVolumeId(SourceVolumeIdT&& value) {
90 SetSourceVolumeId(std::forward<SourceVolumeIdT>(value));
91 return *this;
92 }
94
96
103 inline int GetIops() const { return m_iops; }
104 inline void SetIops(int value) {
105 m_iopsHasBeenSet = true;
106 m_iops = value;
107 }
108 inline CreateVolumeResponse& WithIops(int value) {
109 SetIops(value);
110 return *this;
111 }
113
115
118 inline const Aws::Vector<Tag>& GetTags() const { return m_tags; }
119 template <typename TagsT = Aws::Vector<Tag>>
120 void SetTags(TagsT&& value) {
121 m_tagsHasBeenSet = true;
122 m_tags = std::forward<TagsT>(value);
123 }
124 template <typename TagsT = Aws::Vector<Tag>>
126 SetTags(std::forward<TagsT>(value));
127 return *this;
128 }
129 template <typename TagsT = Tag>
131 m_tagsHasBeenSet = true;
132 m_tags.emplace_back(std::forward<TagsT>(value));
133 return *this;
134 }
136
138
141 inline VolumeType GetVolumeType() const { return m_volumeType; }
142 inline void SetVolumeType(VolumeType value) {
143 m_volumeTypeHasBeenSet = true;
144 m_volumeType = value;
145 }
147 SetVolumeType(value);
148 return *this;
149 }
151
153
157 inline bool GetFastRestored() const { return m_fastRestored; }
158 inline void SetFastRestored(bool value) {
159 m_fastRestoredHasBeenSet = true;
160 m_fastRestored = value;
161 }
163 SetFastRestored(value);
164 return *this;
165 }
167
169
172 inline bool GetMultiAttachEnabled() const { return m_multiAttachEnabled; }
173 inline void SetMultiAttachEnabled(bool value) {
174 m_multiAttachEnabledHasBeenSet = true;
175 m_multiAttachEnabled = value;
176 }
179 return *this;
180 }
182
184
187 inline int GetThroughput() const { return m_throughput; }
188 inline void SetThroughput(int value) {
189 m_throughputHasBeenSet = true;
190 m_throughput = value;
191 }
193 SetThroughput(value);
194 return *this;
195 }
197
199
203 inline SSEType GetSseType() const { return m_sseType; }
204 inline void SetSseType(SSEType value) {
205 m_sseTypeHasBeenSet = true;
206 m_sseType = value;
207 }
209 SetSseType(value);
210 return *this;
211 }
213
215
218 inline const OperatorResponse& GetOperator() const { return m_operator; }
219 template <typename OperatorT = OperatorResponse>
220 void SetOperator(OperatorT&& value) {
221 m_operatorHasBeenSet = true;
222 m_operator = std::forward<OperatorT>(value);
223 }
224 template <typename OperatorT = OperatorResponse>
225 CreateVolumeResponse& WithOperator(OperatorT&& value) {
226 SetOperator(std::forward<OperatorT>(value));
227 return *this;
228 }
230
232
237 inline int GetVolumeInitializationRate() const { return m_volumeInitializationRate; }
238 inline void SetVolumeInitializationRate(int value) {
239 m_volumeInitializationRateHasBeenSet = true;
240 m_volumeInitializationRate = value;
241 }
244 return *this;
245 }
247
249
252 inline const Aws::String& GetVolumeId() const { return m_volumeId; }
253 template <typename VolumeIdT = Aws::String>
254 void SetVolumeId(VolumeIdT&& value) {
255 m_volumeIdHasBeenSet = true;
256 m_volumeId = std::forward<VolumeIdT>(value);
257 }
258 template <typename VolumeIdT = Aws::String>
259 CreateVolumeResponse& WithVolumeId(VolumeIdT&& value) {
260 SetVolumeId(std::forward<VolumeIdT>(value));
261 return *this;
262 }
264
266
269 inline int GetSize() const { return m_size; }
270 inline void SetSize(int value) {
271 m_sizeHasBeenSet = true;
272 m_size = value;
273 }
274 inline CreateVolumeResponse& WithSize(int value) {
275 SetSize(value);
276 return *this;
277 }
279
281
284 inline const Aws::String& GetSnapshotId() const { return m_snapshotId; }
285 template <typename SnapshotIdT = Aws::String>
286 void SetSnapshotId(SnapshotIdT&& value) {
287 m_snapshotIdHasBeenSet = true;
288 m_snapshotId = std::forward<SnapshotIdT>(value);
289 }
290 template <typename SnapshotIdT = Aws::String>
291 CreateVolumeResponse& WithSnapshotId(SnapshotIdT&& value) {
292 SetSnapshotId(std::forward<SnapshotIdT>(value));
293 return *this;
294 }
296
298
301 inline const Aws::String& GetAvailabilityZone() const { return m_availabilityZone; }
302 template <typename AvailabilityZoneT = Aws::String>
303 void SetAvailabilityZone(AvailabilityZoneT&& value) {
304 m_availabilityZoneHasBeenSet = true;
305 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
306 }
307 template <typename AvailabilityZoneT = Aws::String>
308 CreateVolumeResponse& WithAvailabilityZone(AvailabilityZoneT&& value) {
309 SetAvailabilityZone(std::forward<AvailabilityZoneT>(value));
310 return *this;
311 }
313
315
318 inline VolumeState GetState() const { return m_state; }
319 inline void SetState(VolumeState value) {
320 m_stateHasBeenSet = true;
321 m_state = value;
322 }
324 SetState(value);
325 return *this;
326 }
328
330
333 inline const Aws::Utils::DateTime& GetCreateTime() const { return m_createTime; }
334 template <typename CreateTimeT = Aws::Utils::DateTime>
335 void SetCreateTime(CreateTimeT&& value) {
336 m_createTimeHasBeenSet = true;
337 m_createTime = std::forward<CreateTimeT>(value);
338 }
339 template <typename CreateTimeT = Aws::Utils::DateTime>
340 CreateVolumeResponse& WithCreateTime(CreateTimeT&& value) {
341 SetCreateTime(std::forward<CreateTimeT>(value));
342 return *this;
343 }
345
347
351 inline const Aws::Vector<VolumeAttachment>& GetAttachments() const { return m_attachments; }
352 template <typename AttachmentsT = Aws::Vector<VolumeAttachment>>
353 void SetAttachments(AttachmentsT&& value) {
354 m_attachmentsHasBeenSet = true;
355 m_attachments = std::forward<AttachmentsT>(value);
356 }
357 template <typename AttachmentsT = Aws::Vector<VolumeAttachment>>
358 CreateVolumeResponse& WithAttachments(AttachmentsT&& value) {
359 SetAttachments(std::forward<AttachmentsT>(value));
360 return *this;
361 }
362 template <typename AttachmentsT = VolumeAttachment>
363 CreateVolumeResponse& AddAttachments(AttachmentsT&& value) {
364 m_attachmentsHasBeenSet = true;
365 m_attachments.emplace_back(std::forward<AttachmentsT>(value));
366 return *this;
367 }
369
371
374 inline bool GetEncrypted() const { return m_encrypted; }
375 inline void SetEncrypted(bool value) {
376 m_encryptedHasBeenSet = true;
377 m_encrypted = value;
378 }
380 SetEncrypted(value);
381 return *this;
382 }
384
386
390 inline const Aws::String& GetKmsKeyId() const { return m_kmsKeyId; }
391 template <typename KmsKeyIdT = Aws::String>
392 void SetKmsKeyId(KmsKeyIdT&& value) {
393 m_kmsKeyIdHasBeenSet = true;
394 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
395 }
396 template <typename KmsKeyIdT = Aws::String>
397 CreateVolumeResponse& WithKmsKeyId(KmsKeyIdT&& value) {
398 SetKmsKeyId(std::forward<KmsKeyIdT>(value));
399 return *this;
400 }
402
404
405 inline const ResponseMetadata& GetResponseMetadata() const { return m_responseMetadata; }
406 template <typename ResponseMetadataT = ResponseMetadata>
407 void SetResponseMetadata(ResponseMetadataT&& value) {
408 m_responseMetadataHasBeenSet = true;
409 m_responseMetadata = std::forward<ResponseMetadataT>(value);
410 }
411 template <typename ResponseMetadataT = ResponseMetadata>
412 CreateVolumeResponse& WithResponseMetadata(ResponseMetadataT&& value) {
413 SetResponseMetadata(std::forward<ResponseMetadataT>(value));
414 return *this;
415 }
417 private:
418 Aws::String m_availabilityZoneId;
419
420 Aws::String m_outpostArn;
421
422 Aws::String m_sourceVolumeId;
423
424 int m_iops{0};
425
426 Aws::Vector<Tag> m_tags;
427
428 VolumeType m_volumeType{VolumeType::NOT_SET};
429
430 bool m_fastRestored{false};
431
432 bool m_multiAttachEnabled{false};
433
434 int m_throughput{0};
435
436 SSEType m_sseType{SSEType::NOT_SET};
437
438 OperatorResponse m_operator;
439
440 int m_volumeInitializationRate{0};
441
442 Aws::String m_volumeId;
443
444 int m_size{0};
445
446 Aws::String m_snapshotId;
447
448 Aws::String m_availabilityZone;
449
451
452 Aws::Utils::DateTime m_createTime{};
453
454 Aws::Vector<VolumeAttachment> m_attachments;
455
456 bool m_encrypted{false};
457
458 Aws::String m_kmsKeyId;
459
460 ResponseMetadata m_responseMetadata;
461 bool m_availabilityZoneIdHasBeenSet = false;
462 bool m_outpostArnHasBeenSet = false;
463 bool m_sourceVolumeIdHasBeenSet = false;
464 bool m_iopsHasBeenSet = false;
465 bool m_tagsHasBeenSet = false;
466 bool m_volumeTypeHasBeenSet = false;
467 bool m_fastRestoredHasBeenSet = false;
468 bool m_multiAttachEnabledHasBeenSet = false;
469 bool m_throughputHasBeenSet = false;
470 bool m_sseTypeHasBeenSet = false;
471 bool m_operatorHasBeenSet = false;
472 bool m_volumeInitializationRateHasBeenSet = false;
473 bool m_volumeIdHasBeenSet = false;
474 bool m_sizeHasBeenSet = false;
475 bool m_snapshotIdHasBeenSet = false;
476 bool m_availabilityZoneHasBeenSet = false;
477 bool m_stateHasBeenSet = false;
478 bool m_createTimeHasBeenSet = false;
479 bool m_attachmentsHasBeenSet = false;
480 bool m_encryptedHasBeenSet = false;
481 bool m_kmsKeyIdHasBeenSet = false;
482 bool m_responseMetadataHasBeenSet = false;
483};
484
485} // namespace Model
486} // namespace EC2
487} // namespace Aws
CreateVolumeResponse & WithVolumeType(VolumeType value)
const Aws::String & GetSnapshotId() const
const Aws::String & GetAvailabilityZone() const
CreateVolumeResponse & WithThroughput(int value)
const Aws::String & GetAvailabilityZoneId() const
CreateVolumeResponse & AddTags(TagsT &&value)
CreateVolumeResponse & WithKmsKeyId(KmsKeyIdT &&value)
CreateVolumeResponse & WithAvailabilityZone(AvailabilityZoneT &&value)
AWS_EC2_API CreateVolumeResponse()=default
const Aws::String & GetSourceVolumeId() const
const Aws::Vector< VolumeAttachment > & GetAttachments() const
CreateVolumeResponse & WithCreateTime(CreateTimeT &&value)
CreateVolumeResponse & WithSize(int value)
AWS_EC2_API CreateVolumeResponse & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
CreateVolumeResponse & WithSourceVolumeId(SourceVolumeIdT &&value)
CreateVolumeResponse & AddAttachments(AttachmentsT &&value)
AWS_EC2_API CreateVolumeResponse(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
CreateVolumeResponse & WithTags(TagsT &&value)
CreateVolumeResponse & WithMultiAttachEnabled(bool value)
CreateVolumeResponse & WithResponseMetadata(ResponseMetadataT &&value)
CreateVolumeResponse & WithIops(int value)
CreateVolumeResponse & WithVolumeInitializationRate(int value)
CreateVolumeResponse & WithState(VolumeState value)
const ResponseMetadata & GetResponseMetadata() const
void SetAvailabilityZone(AvailabilityZoneT &&value)
CreateVolumeResponse & WithAvailabilityZoneId(AvailabilityZoneIdT &&value)
void SetSourceVolumeId(SourceVolumeIdT &&value)
CreateVolumeResponse & WithAttachments(AttachmentsT &&value)
CreateVolumeResponse & WithVolumeId(VolumeIdT &&value)
CreateVolumeResponse & WithOutpostArn(OutpostArnT &&value)
void SetResponseMetadata(ResponseMetadataT &&value)
CreateVolumeResponse & WithSnapshotId(SnapshotIdT &&value)
CreateVolumeResponse & WithOperator(OperatorT &&value)
CreateVolumeResponse & WithFastRestored(bool value)
const OperatorResponse & GetOperator() const
CreateVolumeResponse & WithSseType(SSEType value)
void SetAvailabilityZoneId(AvailabilityZoneIdT &&value)
const Aws::Utils::DateTime & GetCreateTime() const
CreateVolumeResponse & WithEncrypted(bool value)
const Aws::String & GetOutpostArn() const
const Aws::Vector< Tag > & GetTags() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Xml::XmlDocument XmlDocument