7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSStreamFwd.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/ec2/model/VolumeType.h>
12#include <aws/ec2/model/SSEType.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>
58 inline void SetOutpostArn(
const char* value) { m_outpostArnHasBeenSet =
true; m_outpostArn.assign(value); }
72 inline int GetIops()
const{
return m_iops; }
74 inline void SetIops(
int value) { m_iopsHasBeenSet =
true; m_iops = value; }
88 inline Volume&
AddTags(
const Tag& value) { m_tagsHasBeenSet =
true; m_tags.push_back(value);
return *
this; }
89 inline Volume&
AddTags(
Tag&& value) { m_tagsHasBeenSet =
true; m_tags.push_back(std::move(value));
return *
this; }
111 inline void SetFastRestored(
bool value) { m_fastRestoredHasBeenSet =
true; m_fastRestored = value; }
121 inline void SetMultiAttachEnabled(
bool value) { m_multiAttachEnabledHasBeenSet =
true; m_multiAttachEnabled = value; }
131 inline void SetThroughput(
int value) { m_throughputHasBeenSet =
true; m_throughput = value; }
143 inline void SetSseType(
SSEType&& value) { m_sseTypeHasBeenSet =
true; m_sseType = std::move(value); }
156 inline void SetVolumeId(
const char* value) { m_volumeIdHasBeenSet =
true; m_volumeId.assign(value); }
168 inline void SetSize(
int value) { m_sizeHasBeenSet =
true; m_size = value; }
180 inline void SetSnapshotId(
const char* value) { m_snapshotIdHasBeenSet =
true; m_snapshotId.assign(value); }
194 inline void SetAvailabilityZone(
const char* value) { m_availabilityZoneHasBeenSet =
true; m_availabilityZone.assign(value); }
245 inline void SetEncrypted(
bool value) { m_encryptedHasBeenSet =
true; m_encrypted = value; }
258 inline void SetKmsKeyId(
const char* value) { m_kmsKeyIdHasBeenSet =
true; m_kmsKeyId.assign(value); }
275 bool m_outpostArnHasBeenSet =
false;
278 bool m_iopsHasBeenSet =
false;
281 bool m_tagsHasBeenSet =
false;
284 bool m_volumeTypeHasBeenSet =
false;
287 bool m_fastRestoredHasBeenSet =
false;
289 bool m_multiAttachEnabled;
290 bool m_multiAttachEnabledHasBeenSet =
false;
293 bool m_throughputHasBeenSet =
false;
296 bool m_sseTypeHasBeenSet =
false;
299 bool m_volumeIdHasBeenSet =
false;
302 bool m_sizeHasBeenSet =
false;
305 bool m_snapshotIdHasBeenSet =
false;
308 bool m_availabilityZoneHasBeenSet =
false;
311 bool m_stateHasBeenSet =
false;
314 bool m_createTimeHasBeenSet =
false;
317 bool m_attachmentsHasBeenSet =
false;
320 bool m_encryptedHasBeenSet =
false;
323 bool m_kmsKeyIdHasBeenSet =
false;
void SetCreateTime(Aws::Utils::DateTime &&value)
const Aws::Vector< Tag > & GetTags() const
void SetAvailabilityZone(Aws::String &&value)
void SetMultiAttachEnabled(bool value)
bool SseTypeHasBeenSet() const
bool GetFastRestored() const
bool VolumeTypeHasBeenSet() const
Volume & WithSseType(SSEType &&value)
Volume & WithCreateTime(Aws::Utils::DateTime &&value)
Volume & WithAvailabilityZone(const Aws::String &value)
Volume & WithOutpostArn(const char *value)
void SetSnapshotId(const char *value)
void SetVolumeId(const char *value)
void SetVolumeType(VolumeType &&value)
const Aws::String & GetKmsKeyId() const
bool GetEncrypted() const
bool MultiAttachEnabledHasBeenSet() const
void SetSseType(const SSEType &value)
Volume & WithThroughput(int value)
Volume & WithOutpostArn(Aws::String &&value)
void SetAttachments(const Aws::Vector< VolumeAttachment > &value)
const VolumeState & GetState() const
bool AttachmentsHasBeenSet() const
void SetOutpostArn(const Aws::String &value)
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
void SetState(const VolumeState &value)
Volume & WithFastRestored(bool value)
Volume & WithSnapshotId(const Aws::String &value)
Volume & WithAvailabilityZone(Aws::String &&value)
bool KmsKeyIdHasBeenSet() const
Volume & WithKmsKeyId(const char *value)
Volume & WithTags(const Aws::Vector< Tag > &value)
Volume & WithVolumeId(const Aws::String &value)
Volume & WithTags(Aws::Vector< Tag > &&value)
Volume & WithSize(int value)
void SetResponseMetadata(ResponseMetadata &&value)
void SetState(VolumeState &&value)
void SetAvailabilityZone(const Aws::String &value)
bool VolumeIdHasBeenSet() const
Volume & WithSnapshotId(const char *value)
const Aws::Utils::DateTime & GetCreateTime() const
Volume & WithIops(int value)
void SetCreateTime(const Aws::Utils::DateTime &value)
int GetThroughput() const
void SetFastRestored(bool value)
void SetAvailabilityZone(const char *value)
Volume & WithAttachments(Aws::Vector< VolumeAttachment > &&value)
const Aws::String & GetSnapshotId() const
Volume & WithVolumeId(Aws::String &&value)
const Aws::String & GetVolumeId() const
Volume & WithKmsKeyId(const Aws::String &value)
void SetOutpostArn(const char *value)
Volume & WithAvailabilityZone(const char *value)
bool AvailabilityZoneHasBeenSet() const
AWS_EC2_API Volume(const Aws::Utils::Xml::XmlNode &xmlNode)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
Volume & WithMultiAttachEnabled(bool value)
Volume & WithResponseMetadata(const ResponseMetadata &value)
Volume & WithResponseMetadata(ResponseMetadata &&value)
Volume & WithAttachments(const Aws::Vector< VolumeAttachment > &value)
void SetVolumeType(const VolumeType &value)
void SetTags(Aws::Vector< Tag > &&value)
Volume & WithState(const VolumeState &value)
Volume & AddAttachments(VolumeAttachment &&value)
void SetVolumeId(const Aws::String &value)
void SetSseType(SSEType &&value)
Volume & WithVolumeType(const VolumeType &value)
bool SizeHasBeenSet() const
void SetKmsKeyId(Aws::String &&value)
Volume & AddAttachments(const VolumeAttachment &value)
const Aws::Vector< VolumeAttachment > & GetAttachments() const
bool IopsHasBeenSet() const
const Aws::String & GetOutpostArn() const
bool SnapshotIdHasBeenSet() const
bool StateHasBeenSet() const
Volume & WithOutpostArn(const Aws::String &value)
AWS_EC2_API Volume & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
bool FastRestoredHasBeenSet() const
bool GetMultiAttachEnabled() const
void SetThroughput(int value)
Volume & AddTags(const Tag &value)
Volume & WithVolumeType(VolumeType &&value)
void SetKmsKeyId(const Aws::String &value)
bool EncryptedHasBeenSet() const
void SetKmsKeyId(const char *value)
const Aws::String & GetAvailabilityZone() const
bool CreateTimeHasBeenSet() const
void SetEncrypted(bool value)
bool OutpostArnHasBeenSet() const
const VolumeType & GetVolumeType() const
bool ThroughputHasBeenSet() const
void SetSnapshotId(const Aws::String &value)
Volume & WithEncrypted(bool value)
Volume & WithState(VolumeState &&value)
void SetOutpostArn(Aws::String &&value)
void SetSnapshotId(Aws::String &&value)
Volume & WithCreateTime(const Aws::Utils::DateTime &value)
Volume & WithSnapshotId(Aws::String &&value)
bool TagsHasBeenSet() const
Volume & WithKmsKeyId(Aws::String &&value)
Volume & WithSseType(const SSEType &value)
const SSEType & GetSseType() const
Volume & AddTags(Tag &&value)
void SetResponseMetadata(const ResponseMetadata &value)
void SetTags(const Aws::Vector< Tag > &value)
void SetVolumeId(Aws::String &&value)
Volume & WithVolumeId(const char *value)
void SetAttachments(Aws::Vector< VolumeAttachment > &&value)
const ResponseMetadata & GetResponseMetadata() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
std::basic_ostream< char, std::char_traits< char > > OStream