7#include <aws/core/http/HttpResponse.h>
8#include <aws/core/utils/DateTime.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/ec2/EC2_EXPORTS.h>
12#include <aws/ec2/model/OperatorResponse.h>
13#include <aws/ec2/model/ResponseMetadata.h>
14#include <aws/ec2/model/SSEType.h>
15#include <aws/ec2/model/Tag.h>
16#include <aws/ec2/model/VolumeAttachment.h>
17#include <aws/ec2/model/VolumeState.h>
18#include <aws/ec2/model/VolumeType.h>
23template <
typename RESULT_TYPE>
24class AmazonWebServiceResult;
49 template <
typename AvailabilityZoneIdT = Aws::String>
51 m_availabilityZoneIdHasBeenSet =
true;
52 m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value);
54 template <
typename AvailabilityZoneIdT = Aws::String>
66 template <
typename OutpostArnT = Aws::String>
68 m_outpostArnHasBeenSet =
true;
69 m_outpostArn = std::forward<OutpostArnT>(value);
71 template <
typename OutpostArnT = Aws::String>
84 template <
typename SourceVolumeIdT = Aws::String>
86 m_sourceVolumeIdHasBeenSet =
true;
87 m_sourceVolumeId = std::forward<SourceVolumeIdT>(value);
89 template <
typename SourceVolumeIdT = Aws::String>
106 m_iopsHasBeenSet =
true;
120 template <
typename TagsT = Aws::Vector<Tag>>
122 m_tagsHasBeenSet =
true;
123 m_tags = std::forward<TagsT>(value);
125 template <
typename TagsT = Aws::Vector<Tag>>
127 SetTags(std::forward<TagsT>(value));
130 template <
typename TagsT = Tag>
132 m_tagsHasBeenSet =
true;
133 m_tags.emplace_back(std::forward<TagsT>(value));
144 m_volumeTypeHasBeenSet =
true;
145 m_volumeType = value;
160 m_fastRestoredHasBeenSet =
true;
161 m_fastRestored = value;
175 m_multiAttachEnabledHasBeenSet =
true;
176 m_multiAttachEnabled = value;
190 m_throughputHasBeenSet =
true;
191 m_throughput = value;
206 m_sseTypeHasBeenSet =
true;
220 template <
typename OperatorT = OperatorResponse>
222 m_operatorHasBeenSet =
true;
223 m_operator = std::forward<OperatorT>(value);
225 template <
typename OperatorT = OperatorResponse>
240 m_volumeInitializationRateHasBeenSet =
true;
241 m_volumeInitializationRate = value;
254 template <
typename VolumeIdT = Aws::String>
256 m_volumeIdHasBeenSet =
true;
257 m_volumeId = std::forward<VolumeIdT>(value);
259 template <
typename VolumeIdT = Aws::String>
272 m_sizeHasBeenSet =
true;
286 template <
typename SnapshotIdT = Aws::String>
288 m_snapshotIdHasBeenSet =
true;
289 m_snapshotId = std::forward<SnapshotIdT>(value);
291 template <
typename SnapshotIdT = Aws::String>
303 template <
typename AvailabilityZoneT = Aws::String>
305 m_availabilityZoneHasBeenSet =
true;
306 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
308 template <
typename AvailabilityZoneT = Aws::String>
321 m_stateHasBeenSet =
true;
335 template <
typename CreateTimeT = Aws::Utils::DateTime>
337 m_createTimeHasBeenSet =
true;
338 m_createTime = std::forward<CreateTimeT>(value);
340 template <
typename CreateTimeT = Aws::Utils::DateTime>
353 template <
typename AttachmentsT = Aws::Vector<VolumeAttachment>>
355 m_attachmentsHasBeenSet =
true;
356 m_attachments = std::forward<AttachmentsT>(value);
358 template <
typename AttachmentsT = Aws::Vector<VolumeAttachment>>
363 template <
typename AttachmentsT = VolumeAttachment>
365 m_attachmentsHasBeenSet =
true;
366 m_attachments.emplace_back(std::forward<AttachmentsT>(value));
377 m_encryptedHasBeenSet =
true;
392 template <
typename KmsKeyIdT = Aws::String>
394 m_kmsKeyIdHasBeenSet =
true;
395 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
397 template <
typename KmsKeyIdT = Aws::String>
407 template <
typename ResponseMetadataT = ResponseMetadata>
409 m_responseMetadataHasBeenSet =
true;
410 m_responseMetadata = std::forward<ResponseMetadataT>(value);
412 template <
typename ResponseMetadataT = ResponseMetadata>
433 bool m_fastRestored{
false};
435 bool m_multiAttachEnabled{
false};
441 OperatorResponse m_operator;
443 int m_volumeInitializationRate{0};
459 bool m_encrypted{
false};
463 ResponseMetadata m_responseMetadata;
465 bool m_availabilityZoneIdHasBeenSet =
false;
466 bool m_outpostArnHasBeenSet =
false;
467 bool m_sourceVolumeIdHasBeenSet =
false;
468 bool m_iopsHasBeenSet =
false;
469 bool m_tagsHasBeenSet =
false;
470 bool m_volumeTypeHasBeenSet =
false;
471 bool m_fastRestoredHasBeenSet =
false;
472 bool m_multiAttachEnabledHasBeenSet =
false;
473 bool m_throughputHasBeenSet =
false;
474 bool m_sseTypeHasBeenSet =
false;
475 bool m_operatorHasBeenSet =
false;
476 bool m_volumeInitializationRateHasBeenSet =
false;
477 bool m_volumeIdHasBeenSet =
false;
478 bool m_sizeHasBeenSet =
false;
479 bool m_snapshotIdHasBeenSet =
false;
480 bool m_availabilityZoneHasBeenSet =
false;
481 bool m_stateHasBeenSet =
false;
482 bool m_createTimeHasBeenSet =
false;
483 bool m_attachmentsHasBeenSet =
false;
484 bool m_encryptedHasBeenSet =
false;
485 bool m_kmsKeyIdHasBeenSet =
false;
486 bool m_responseMetadataHasBeenSet =
false;
CreateVolumeResponse & WithVolumeType(VolumeType value)
const Aws::String & GetSnapshotId() const
SSEType GetSseType() const
void SetSseType(SSEType value)
const Aws::String & GetAvailabilityZone() const
void SetOutpostArn(OutpostArnT &&value)
CreateVolumeResponse & WithThroughput(int value)
const Aws::String & GetAvailabilityZoneId() const
CreateVolumeResponse & AddTags(TagsT &&value)
bool GetFastRestored() const
CreateVolumeResponse & WithKmsKeyId(KmsKeyIdT &&value)
const Aws::String & GetKmsKeyId() const
CreateVolumeResponse & WithAvailabilityZone(AvailabilityZoneT &&value)
VolumeState GetState() const
AWS_EC2_API CreateVolumeResponse()=default
void SetMultiAttachEnabled(bool value)
const Aws::String & GetSourceVolumeId() const
const Aws::Vector< VolumeAttachment > & GetAttachments() const
void SetEncrypted(bool value)
void SetState(VolumeState value)
CreateVolumeResponse & WithCreateTime(CreateTimeT &&value)
void SetSnapshotId(SnapshotIdT &&value)
void SetVolumeInitializationRate(int value)
void SetVolumeType(VolumeType value)
CreateVolumeResponse & WithSize(int value)
AWS_EC2_API CreateVolumeResponse & operator=(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
Aws::Http::HttpResponseCode GetHttpResponseCode() const
CreateVolumeResponse & WithSourceVolumeId(SourceVolumeIdT &&value)
const Aws::String & GetVolumeId() const
CreateVolumeResponse & AddAttachments(AttachmentsT &&value)
AWS_EC2_API CreateVolumeResponse(const Aws::AmazonWebServiceResult< Aws::Utils::Xml::XmlDocument > &result)
void SetFastRestored(bool value)
CreateVolumeResponse & WithTags(TagsT &&value)
CreateVolumeResponse & WithMultiAttachEnabled(bool value)
CreateVolumeResponse & WithResponseMetadata(ResponseMetadataT &&value)
void SetThroughput(int value)
CreateVolumeResponse & WithIops(int value)
void SetTags(TagsT &&value)
void SetOperator(OperatorT &&value)
CreateVolumeResponse & WithVolumeInitializationRate(int value)
bool GetMultiAttachEnabled() const
CreateVolumeResponse & WithState(VolumeState value)
bool GetEncrypted() const
void SetCreateTime(CreateTimeT &&value)
const ResponseMetadata & GetResponseMetadata() const
void SetAvailabilityZone(AvailabilityZoneT &&value)
CreateVolumeResponse & WithAvailabilityZoneId(AvailabilityZoneIdT &&value)
void SetSourceVolumeId(SourceVolumeIdT &&value)
VolumeType GetVolumeType() const
CreateVolumeResponse & WithAttachments(AttachmentsT &&value)
int GetVolumeInitializationRate() const
void SetKmsKeyId(KmsKeyIdT &&value)
CreateVolumeResponse & WithVolumeId(VolumeIdT &&value)
CreateVolumeResponse & WithOutpostArn(OutpostArnT &&value)
int GetThroughput() const
void SetResponseMetadata(ResponseMetadataT &&value)
CreateVolumeResponse & WithSnapshotId(SnapshotIdT &&value)
CreateVolumeResponse & WithOperator(OperatorT &&value)
CreateVolumeResponse & WithFastRestored(bool value)
void SetAttachments(AttachmentsT &&value)
const OperatorResponse & GetOperator() const
CreateVolumeResponse & WithSseType(SSEType value)
void SetAvailabilityZoneId(AvailabilityZoneIdT &&value)
void SetVolumeId(VolumeIdT &&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