7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/model/VolumeType.h>
11#include <aws/ec2/model/SSEType.h>
12#include <aws/ec2/model/OperatorResponse.h>
13#include <aws/ec2/model/VolumeState.h>
14#include <aws/core/utils/DateTime.h>
15#include <aws/ec2/model/ResponseMetadata.h>
16#include <aws/ec2/model/Tag.h>
17#include <aws/ec2/model/VolumeAttachment.h>
22template<
typename RESULT_TYPE>
23class AmazonWebServiceResult;
54 template<
typename OutpostArnT = Aws::String>
55 void SetOutpostArn(OutpostArnT&& value) { m_outpostArnHasBeenSet =
true; m_outpostArn = std::forward<OutpostArnT>(value); }
56 template<
typename OutpostArnT = Aws::String>
68 inline int GetIops()
const {
return m_iops; }
69 inline void SetIops(
int value) { m_iopsHasBeenSet =
true; m_iops = value; }
78 template<
typename TagsT = Aws::Vector<Tag>>
79 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
80 template<
typename TagsT = Aws::Vector<Tag>>
82 template<
typename TagsT = Tag>
101 inline void SetFastRestored(
bool value) { m_fastRestoredHasBeenSet =
true; m_fastRestored = value; }
110 inline void SetMultiAttachEnabled(
bool value) { m_multiAttachEnabledHasBeenSet =
true; m_multiAttachEnabled = value; }
119 inline void SetThroughput(
int value) { m_throughputHasBeenSet =
true; m_throughput = value; }
138 template<
typename OperatorT = OperatorResponse>
139 void SetOperator(OperatorT&& value) { m_operatorHasBeenSet =
true; m_operator = std::forward<OperatorT>(value); }
140 template<
typename OperatorT = OperatorResponse>
160 template<
typename VolumeIdT = Aws::String>
161 void SetVolumeId(VolumeIdT&& value) { m_volumeIdHasBeenSet =
true; m_volumeId = std::forward<VolumeIdT>(value); }
162 template<
typename VolumeIdT = Aws::String>
171 inline void SetSize(
int value) { m_sizeHasBeenSet =
true; m_size = value; }
180 template<
typename SnapshotIdT = Aws::String>
181 void SetSnapshotId(SnapshotIdT&& value) { m_snapshotIdHasBeenSet =
true; m_snapshotId = std::forward<SnapshotIdT>(value); }
182 template<
typename SnapshotIdT = Aws::String>
191 template<
typename AvailabilityZoneT = Aws::String>
192 void SetAvailabilityZone(AvailabilityZoneT&& value) { m_availabilityZoneHasBeenSet =
true; m_availabilityZone = std::forward<AvailabilityZoneT>(value); }
193 template<
typename AvailabilityZoneT = Aws::String>
211 template<
typename CreateTimeT = Aws::Utils::DateTime>
212 void SetCreateTime(CreateTimeT&& value) { m_createTimeHasBeenSet =
true; m_createTime = std::forward<CreateTimeT>(value); }
213 template<
typename CreateTimeT = Aws::Utils::DateTime>
223 template<
typename AttachmentsT = Aws::Vector<VolumeAttachment>>
224 void SetAttachments(AttachmentsT&& value) { m_attachmentsHasBeenSet =
true; m_attachments = std::forward<AttachmentsT>(value); }
225 template<
typename AttachmentsT = Aws::Vector<VolumeAttachment>>
227 template<
typename AttachmentsT = VolumeAttachment>
236 inline void SetEncrypted(
bool value) { m_encryptedHasBeenSet =
true; m_encrypted = value; }
246 template<
typename KmsKeyIdT = Aws::String>
247 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet =
true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
248 template<
typename KmsKeyIdT = Aws::String>
255 template<
typename ResponseMetadataT = ResponseMetadata>
256 void SetResponseMetadata(ResponseMetadataT&& value) { m_responseMetadataHasBeenSet =
true; m_responseMetadata = std::forward<ResponseMetadataT>(value); }
257 template<
typename ResponseMetadataT = ResponseMetadata>
263 bool m_outpostArnHasBeenSet =
false;
266 bool m_iopsHasBeenSet =
false;
269 bool m_tagsHasBeenSet =
false;
272 bool m_volumeTypeHasBeenSet =
false;
274 bool m_fastRestored{
false};
275 bool m_fastRestoredHasBeenSet =
false;
277 bool m_multiAttachEnabled{
false};
278 bool m_multiAttachEnabledHasBeenSet =
false;
281 bool m_throughputHasBeenSet =
false;
284 bool m_sseTypeHasBeenSet =
false;
286 OperatorResponse m_operator;
287 bool m_operatorHasBeenSet =
false;
289 int m_volumeInitializationRate{0};
290 bool m_volumeInitializationRateHasBeenSet =
false;
293 bool m_volumeIdHasBeenSet =
false;
296 bool m_sizeHasBeenSet =
false;
299 bool m_snapshotIdHasBeenSet =
false;
302 bool m_availabilityZoneHasBeenSet =
false;
305 bool m_stateHasBeenSet =
false;
308 bool m_createTimeHasBeenSet =
false;
311 bool m_attachmentsHasBeenSet =
false;
313 bool m_encrypted{
false};
314 bool m_encryptedHasBeenSet =
false;
317 bool m_kmsKeyIdHasBeenSet =
false;
319 ResponseMetadata m_responseMetadata;
320 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)
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::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)
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)
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 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