7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/ec2/EC2Request.h>
11#include <aws/ec2/EC2_EXPORTS.h>
12#include <aws/ec2/model/OperatorRequest.h>
13#include <aws/ec2/model/TagSpecification.h>
14#include <aws/ec2/model/VolumeType.h>
48 template <
typename AvailabilityZoneT = Aws::String>
50 m_availabilityZoneHasBeenSet =
true;
51 m_availabilityZone = std::forward<AvailabilityZoneT>(value);
53 template <
typename AvailabilityZoneT = Aws::String>
68 template <
typename AvailabilityZoneIdT = Aws::String>
70 m_availabilityZoneIdHasBeenSet =
true;
71 m_availabilityZoneId = std::forward<AvailabilityZoneIdT>(value);
73 template <
typename AvailabilityZoneIdT = Aws::String>
96 m_encryptedHasBeenSet =
true;
120 m_iopsHasBeenSet =
true;
147 template <
typename KmsKeyIdT = Aws::String>
149 m_kmsKeyIdHasBeenSet =
true;
150 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
152 template <
typename KmsKeyIdT = Aws::String>
169 template <
typename OutpostArnT = Aws::String>
171 m_outpostArnHasBeenSet =
true;
172 m_outpostArn = std::forward<OutpostArnT>(value);
174 template <
typename OutpostArnT = Aws::String>
195 m_sizeHasBeenSet =
true;
211 template <
typename SnapshotIdT = Aws::String>
213 m_snapshotIdHasBeenSet =
true;
214 m_snapshotId = std::forward<SnapshotIdT>(value);
216 template <
typename SnapshotIdT = Aws::String>
240 m_volumeTypeHasBeenSet =
true;
241 m_volumeType = value;
255 template <
typename TagSpecificationsT = Aws::Vector<TagSpecification>>
257 m_tagSpecificationsHasBeenSet =
true;
258 m_tagSpecifications = std::forward<TagSpecificationsT>(value);
260 template <
typename TagSpecificationsT = Aws::Vector<TagSpecification>>
265 template <
typename TagSpecificationsT = TagSpecification>
267 m_tagSpecificationsHasBeenSet =
true;
268 m_tagSpecifications.emplace_back(std::forward<TagSpecificationsT>(value));
287 m_multiAttachEnabledHasBeenSet =
true;
288 m_multiAttachEnabled = value;
305 m_throughputHasBeenSet =
true;
306 m_throughput = value;
323 template <
typename ClientTokenT = Aws::String>
325 m_clientTokenHasBeenSet =
true;
326 m_clientToken = std::forward<ClientTokenT>(value);
328 template <
typename ClientTokenT = Aws::String>
357 m_volumeInitializationRateHasBeenSet =
true;
358 m_volumeInitializationRate = value;
372 template <
typename OperatorT = OperatorRequest>
374 m_operatorHasBeenSet =
true;
375 m_operator = std::forward<OperatorT>(value);
377 template <
typename OperatorT = OperatorRequest>
394 m_dryRunHasBeenSet =
true;
407 bool m_encrypted{
false};
423 bool m_multiAttachEnabled{
false};
429 int m_volumeInitializationRate{0};
431 OperatorRequest m_operator;
433 bool m_dryRun{
false};
434 bool m_availabilityZoneHasBeenSet =
false;
435 bool m_availabilityZoneIdHasBeenSet =
false;
436 bool m_encryptedHasBeenSet =
false;
437 bool m_iopsHasBeenSet =
false;
438 bool m_kmsKeyIdHasBeenSet =
false;
439 bool m_outpostArnHasBeenSet =
false;
440 bool m_sizeHasBeenSet =
false;
441 bool m_snapshotIdHasBeenSet =
false;
442 bool m_volumeTypeHasBeenSet =
false;
443 bool m_tagSpecificationsHasBeenSet =
false;
444 bool m_multiAttachEnabledHasBeenSet =
false;
445 bool m_throughputHasBeenSet =
false;
446 bool m_clientTokenHasBeenSet =
true;
447 bool m_volumeInitializationRateHasBeenSet =
false;
448 bool m_operatorHasBeenSet =
false;
449 bool m_dryRunHasBeenSet =
false;
const Aws::String & GetKmsKeyId() const
bool GetMultiAttachEnabled() const
CreateVolumeRequest & WithClientToken(ClientTokenT &&value)
bool DryRunHasBeenSet() const
void SetAvailabilityZoneId(AvailabilityZoneIdT &&value)
void SetVolumeType(VolumeType value)
bool GetEncrypted() const
void SetOperator(OperatorT &&value)
int GetThroughput() const
void SetThroughput(int value)
bool SnapshotIdHasBeenSet() const
const Aws::String & GetAvailabilityZoneId() const
bool ThroughputHasBeenSet() const
bool EncryptedHasBeenSet() const
CreateVolumeRequest & WithAvailabilityZoneId(AvailabilityZoneIdT &&value)
const Aws::String & GetOutpostArn() const
CreateVolumeRequest & WithVolumeType(VolumeType value)
CreateVolumeRequest & WithVolumeInitializationRate(int value)
VolumeType GetVolumeType() const
CreateVolumeRequest & WithDryRun(bool value)
void SetDryRun(bool value)
const Aws::String & GetAvailabilityZone() const
const Aws::Vector< TagSpecification > & GetTagSpecifications() const
void SetAvailabilityZone(AvailabilityZoneT &&value)
void SetKmsKeyId(KmsKeyIdT &&value)
bool SizeHasBeenSet() const
bool VolumeInitializationRateHasBeenSet() const
void SetMultiAttachEnabled(bool value)
CreateVolumeRequest & AddTagSpecifications(TagSpecificationsT &&value)
bool TagSpecificationsHasBeenSet() const
void SetSnapshotId(SnapshotIdT &&value)
void SetClientToken(ClientTokenT &&value)
void SetOutpostArn(OutpostArnT &&value)
bool KmsKeyIdHasBeenSet() const
bool AvailabilityZoneHasBeenSet() const
CreateVolumeRequest & WithKmsKeyId(KmsKeyIdT &&value)
bool AvailabilityZoneIdHasBeenSet() const
void SetEncrypted(bool value)
CreateVolumeRequest & WithEncrypted(bool value)
AWS_EC2_API Aws::String SerializePayload() const override
bool IopsHasBeenSet() const
const Aws::String & GetSnapshotId() const
void SetTagSpecifications(TagSpecificationsT &&value)
bool OperatorHasBeenSet() const
CreateVolumeRequest & WithOutpostArn(OutpostArnT &&value)
CreateVolumeRequest & WithSnapshotId(SnapshotIdT &&value)
CreateVolumeRequest & WithSize(int value)
virtual const char * GetServiceRequestName() const override
CreateVolumeRequest & WithAvailabilityZone(AvailabilityZoneT &&value)
bool MultiAttachEnabledHasBeenSet() const
void SetVolumeInitializationRate(int value)
AWS_EC2_API void DumpBodyToUrl(Aws::Http::URI &uri) const override
CreateVolumeRequest & WithTagSpecifications(TagSpecificationsT &&value)
AWS_EC2_API CreateVolumeRequest()=default
const OperatorRequest & GetOperator() const
bool VolumeTypeHasBeenSet() const
CreateVolumeRequest & WithIops(int value)
bool ClientTokenHasBeenSet() const
CreateVolumeRequest & WithThroughput(int value)
const Aws::String & GetClientToken() const
int GetVolumeInitializationRate() const
bool OutpostArnHasBeenSet() const
CreateVolumeRequest & WithMultiAttachEnabled(bool value)
CreateVolumeRequest & WithOperator(OperatorT &&value)
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector