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/ec2/model/VolumeType.h>
52 inline void SetEncrypted(
bool value) { m_encryptedHasBeenSet =
true; m_encrypted = value; }
62 inline void SetDeleteOnTermination(
bool value) { m_deleteOnTerminationHasBeenSet =
true; m_deleteOnTermination = value; }
82 inline int GetIops()
const {
return m_iops; }
84 inline void SetIops(
int value) { m_iopsHasBeenSet =
true; m_iops = value; }
95 template<
typename KmsKeyIdT = Aws::String>
96 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet =
true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
97 template<
typename KmsKeyIdT = Aws::String>
107 template<
typename SnapshotIdT = Aws::String>
108 void SetSnapshotId(SnapshotIdT&& value) { m_snapshotIdHasBeenSet =
true; m_snapshotId = std::forward<SnapshotIdT>(value); }
109 template<
typename SnapshotIdT = Aws::String>
125 inline void SetVolumeSize(
int value) { m_volumeSizeHasBeenSet =
true; m_volumeSize = value; }
149 inline void SetThroughput(
int value) { m_throughputHasBeenSet =
true; m_throughput = value; }
179 bool m_encrypted{
false};
180 bool m_encryptedHasBeenSet =
false;
182 bool m_deleteOnTermination{
false};
183 bool m_deleteOnTerminationHasBeenSet =
false;
186 bool m_iopsHasBeenSet =
false;
189 bool m_kmsKeyIdHasBeenSet =
false;
192 bool m_snapshotIdHasBeenSet =
false;
195 bool m_volumeSizeHasBeenSet =
false;
198 bool m_volumeTypeHasBeenSet =
false;
201 bool m_throughputHasBeenSet =
false;
203 int m_volumeInitializationRate{0};
204 bool m_volumeInitializationRateHasBeenSet =
false;
LaunchTemplateEbsBlockDeviceRequest & WithKmsKeyId(KmsKeyIdT &&value)
bool DeleteOnTerminationHasBeenSet() const
bool KmsKeyIdHasBeenSet() const
VolumeType GetVolumeType() const
LaunchTemplateEbsBlockDeviceRequest & WithIops(int value)
void SetVolumeSize(int value)
AWS_EC2_API void OutputToStream(Aws::OStream &oStream, const char *location) const
LaunchTemplateEbsBlockDeviceRequest & WithDeleteOnTermination(bool value)
LaunchTemplateEbsBlockDeviceRequest & WithEncrypted(bool value)
void SetVolumeInitializationRate(int value)
bool EncryptedHasBeenSet() const
AWS_EC2_API LaunchTemplateEbsBlockDeviceRequest(const Aws::Utils::Xml::XmlNode &xmlNode)
void SetSnapshotId(SnapshotIdT &&value)
AWS_EC2_API LaunchTemplateEbsBlockDeviceRequest()=default
AWS_EC2_API LaunchTemplateEbsBlockDeviceRequest & operator=(const Aws::Utils::Xml::XmlNode &xmlNode)
const Aws::String & GetSnapshotId() const
void SetEncrypted(bool value)
bool SnapshotIdHasBeenSet() const
int GetVolumeSize() const
const Aws::String & GetKmsKeyId() const
int GetThroughput() const
void SetVolumeType(VolumeType value)
bool VolumeSizeHasBeenSet() const
bool VolumeInitializationRateHasBeenSet() const
LaunchTemplateEbsBlockDeviceRequest & WithVolumeType(VolumeType value)
bool ThroughputHasBeenSet() const
bool VolumeTypeHasBeenSet() const
LaunchTemplateEbsBlockDeviceRequest & WithThroughput(int value)
void SetKmsKeyId(KmsKeyIdT &&value)
LaunchTemplateEbsBlockDeviceRequest & WithVolumeSize(int value)
bool IopsHasBeenSet() const
void SetDeleteOnTermination(bool value)
bool GetEncrypted() const
LaunchTemplateEbsBlockDeviceRequest & WithVolumeInitializationRate(int value)
void SetThroughput(int value)
int GetVolumeInitializationRate() const
AWS_EC2_API void OutputToStream(Aws::OStream &ostream, const char *location, unsigned index, const char *locationValue) const
LaunchTemplateEbsBlockDeviceRequest & WithSnapshotId(SnapshotIdT &&value)
bool GetDeleteOnTermination() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::basic_ostream< char, std::char_traits< char > > OStream