7#include <aws/ec2/EC2_EXPORTS.h>
8#include <aws/ec2/EC2Request.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/ec2/model/VolumeType.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/ec2/model/TagSpecification.h>
14#include <aws/core/utils/UUID.h>
52 inline void SetAvailabilityZone(
const char* value) { m_availabilityZoneHasBeenSet =
true; m_availabilityZone.assign(value); }
73 inline void SetEncrypted(
bool value) { m_encryptedHasBeenSet =
true; m_encrypted = value; }
95 inline int GetIops()
const{
return m_iops; }
97 inline void SetIops(
int value) { m_iopsHasBeenSet =
true; m_iops = value; }
121 inline void SetKmsKeyId(
const char* value) { m_kmsKeyIdHasBeenSet =
true; m_kmsKeyId.assign(value); }
139 inline void SetOutpostArn(
const char* value) { m_outpostArnHasBeenSet =
true; m_outpostArn.assign(value); }
159 inline void SetSize(
int value) { m_sizeHasBeenSet =
true; m_size = value; }
172 inline void SetSnapshotId(
const char* value) { m_snapshotIdHasBeenSet =
true; m_snapshotId.assign(value); }
227 inline void SetMultiAttachEnabled(
bool value) { m_multiAttachEnabledHasBeenSet =
true; m_multiAttachEnabled = value; }
239 inline void SetThroughput(
int value) { m_throughputHasBeenSet =
true; m_throughput = value; }
254 inline void SetClientToken(
const char* value) { m_clientTokenHasBeenSet =
true; m_clientToken.assign(value); }
269 inline void SetDryRun(
bool value) { m_dryRunHasBeenSet =
true; m_dryRun = value; }
275 bool m_availabilityZoneHasBeenSet =
false;
278 bool m_encryptedHasBeenSet =
false;
281 bool m_iopsHasBeenSet =
false;
284 bool m_kmsKeyIdHasBeenSet =
false;
287 bool m_outpostArnHasBeenSet =
false;
290 bool m_sizeHasBeenSet =
false;
293 bool m_snapshotIdHasBeenSet =
false;
296 bool m_volumeTypeHasBeenSet =
false;
299 bool m_tagSpecificationsHasBeenSet =
false;
301 bool m_multiAttachEnabled;
302 bool m_multiAttachEnabledHasBeenSet =
false;
305 bool m_throughputHasBeenSet =
false;
308 bool m_clientTokenHasBeenSet =
false;
311 bool m_dryRunHasBeenSet =
false;
void SetSnapshotId(const char *value)
const Aws::String & GetKmsKeyId() const
void SetClientToken(const Aws::String &value)
bool GetMultiAttachEnabled() const
bool DryRunHasBeenSet() const
void SetKmsKeyId(Aws::String &&value)
void SetOutpostArn(Aws::String &&value)
bool GetEncrypted() const
void SetVolumeType(const VolumeType &value)
int GetThroughput() const
void SetThroughput(int value)
bool SnapshotIdHasBeenSet() const
CreateVolumeRequest & AddTagSpecifications(const TagSpecification &value)
CreateVolumeRequest & WithSnapshotId(Aws::String &&value)
bool ThroughputHasBeenSet() const
bool EncryptedHasBeenSet() const
CreateVolumeRequest & WithOutpostArn(const Aws::String &value)
CreateVolumeRequest & WithClientToken(Aws::String &&value)
void SetVolumeType(VolumeType &&value)
void SetOutpostArn(const char *value)
void SetAvailabilityZone(const Aws::String &value)
const Aws::String & GetOutpostArn() const
void SetClientToken(const char *value)
void SetTagSpecifications(Aws::Vector< TagSpecification > &&value)
CreateVolumeRequest & WithDryRun(bool value)
void SetDryRun(bool value)
const Aws::String & GetAvailabilityZone() const
void SetAvailabilityZone(const char *value)
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
void SetSnapshotId(Aws::String &&value)
CreateVolumeRequest & WithTagSpecifications(const Aws::Vector< TagSpecification > &value)
bool SizeHasBeenSet() const
void SetTagSpecifications(const Aws::Vector< TagSpecification > &value)
CreateVolumeRequest & WithAvailabilityZone(const char *value)
void SetMultiAttachEnabled(bool value)
AWS_EC2_API CreateVolumeRequest()
bool TagSpecificationsHasBeenSet() const
CreateVolumeRequest & WithOutpostArn(Aws::String &&value)
CreateVolumeRequest & WithKmsKeyId(Aws::String &&value)
CreateVolumeRequest & WithOutpostArn(const char *value)
CreateVolumeRequest & AddTagSpecifications(TagSpecification &&value)
CreateVolumeRequest & WithClientToken(const char *value)
CreateVolumeRequest & WithSnapshotId(const Aws::String &value)
void SetAvailabilityZone(Aws::String &&value)
void SetOutpostArn(const Aws::String &value)
bool KmsKeyIdHasBeenSet() const
bool AvailabilityZoneHasBeenSet() const
CreateVolumeRequest & WithAvailabilityZone(const Aws::String &value)
CreateVolumeRequest & WithKmsKeyId(const Aws::String &value)
void SetClientToken(Aws::String &&value)
void SetEncrypted(bool value)
CreateVolumeRequest & WithAvailabilityZone(Aws::String &&value)
CreateVolumeRequest & WithEncrypted(bool value)
AWS_EC2_API Aws::String SerializePayload() const override
CreateVolumeRequest & WithClientToken(const Aws::String &value)
bool IopsHasBeenSet() const
const Aws::String & GetSnapshotId() const
CreateVolumeRequest & WithVolumeType(VolumeType &&value)
CreateVolumeRequest & WithKmsKeyId(const char *value)
CreateVolumeRequest & WithSize(int value)
const VolumeType & GetVolumeType() const
void SetKmsKeyId(const char *value)
virtual const char * GetServiceRequestName() const override
void SetSnapshotId(const Aws::String &value)
bool MultiAttachEnabledHasBeenSet() const
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
CreateVolumeRequest & WithVolumeType(const VolumeType &value)
CreateVolumeRequest & WithSnapshotId(const char *value)
bool VolumeTypeHasBeenSet() const
CreateVolumeRequest & WithTagSpecifications(Aws::Vector< TagSpecification > &&value)
CreateVolumeRequest & WithIops(int value)
bool ClientTokenHasBeenSet() const
CreateVolumeRequest & WithThroughput(int value)
const Aws::String & GetClientToken() const
bool OutpostArnHasBeenSet() const
CreateVolumeRequest & WithMultiAttachEnabled(bool value)
void SetKmsKeyId(const Aws::String &value)
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector