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/ebs/EBSRequest.h>
11#include <aws/ebs/EBS_EXPORTS.h>
12#include <aws/ebs/model/Tag.h>
42 m_volumeSizeHasBeenSet =
true;
74 template <
typename ParentSnapshotIdT = Aws::String>
76 m_parentSnapshotIdHasBeenSet =
true;
77 m_parentSnapshotId = std::forward<ParentSnapshotIdT>(value);
79 template <
typename ParentSnapshotIdT = Aws::String>
92 template <
typename TagsT = Aws::Vector<Tag>>
94 m_tagsHasBeenSet =
true;
95 m_tags = std::forward<TagsT>(value);
97 template <
typename TagsT = Aws::Vector<Tag>>
99 SetTags(std::forward<TagsT>(value));
102 template <
typename TagsT = Tag>
104 m_tagsHasBeenSet =
true;
105 m_tags.emplace_back(std::forward<TagsT>(value));
116 template <
typename DescriptionT = Aws::String>
118 m_descriptionHasBeenSet =
true;
119 m_description = std::forward<DescriptionT>(value);
121 template <
typename DescriptionT = Aws::String>
143 template <
typename ClientTokenT = Aws::String>
145 m_clientTokenHasBeenSet =
true;
146 m_clientToken = std::forward<ClientTokenT>(value);
148 template <
typename ClientTokenT = Aws::String>
177 m_encryptedHasBeenSet =
true;
205 template <
typename KmsKeyArnT = Aws::String>
207 m_kmsKeyArnHasBeenSet =
true;
208 m_kmsKeyArn = std::forward<KmsKeyArnT>(value);
210 template <
typename KmsKeyArnT = Aws::String>
228 m_timeoutHasBeenSet =
true;
237 long long m_volumeSize{0};
247 bool m_encrypted{
false};
252 bool m_volumeSizeHasBeenSet =
false;
253 bool m_parentSnapshotIdHasBeenSet =
false;
254 bool m_tagsHasBeenSet =
false;
255 bool m_descriptionHasBeenSet =
false;
256 bool m_clientTokenHasBeenSet =
true;
257 bool m_encryptedHasBeenSet =
false;
258 bool m_kmsKeyArnHasBeenSet =
false;
259 bool m_timeoutHasBeenSet =
false;
StartSnapshotRequest & WithVolumeSize(long long value)
StartSnapshotRequest & WithKmsKeyArn(KmsKeyArnT &&value)
bool VolumeSizeHasBeenSet() const
StartSnapshotRequest & WithTags(TagsT &&value)
bool TagsHasBeenSet() const
StartSnapshotRequest & WithParentSnapshotId(ParentSnapshotIdT &&value)
StartSnapshotRequest & WithEncrypted(bool value)
bool ClientTokenHasBeenSet() const
StartSnapshotRequest & WithClientToken(ClientTokenT &&value)
const Aws::String & GetDescription() const
const Aws::String & GetKmsKeyArn() const
void SetTimeout(int value)
virtual const char * GetServiceRequestName() const override
const Aws::String & GetClientToken() const
StartSnapshotRequest & WithTimeout(int value)
void SetTags(TagsT &&value)
void SetEncrypted(bool value)
AWS_EBS_API Aws::String SerializePayload() const override
StartSnapshotRequest & AddTags(TagsT &&value)
void SetClientToken(ClientTokenT &&value)
const Aws::String & GetParentSnapshotId() const
bool TimeoutHasBeenSet() const
bool DescriptionHasBeenSet() const
void SetKmsKeyArn(KmsKeyArnT &&value)
bool EncryptedHasBeenSet() const
StartSnapshotRequest & WithDescription(DescriptionT &&value)
void SetDescription(DescriptionT &&value)
bool GetEncrypted() const
bool KmsKeyArnHasBeenSet() const
long long GetVolumeSize() const
AWS_EBS_API StartSnapshotRequest()=default
void SetParentSnapshotId(ParentSnapshotIdT &&value)
void SetVolumeSize(long long value)
const Aws::Vector< Tag > & GetTags() const
bool ParentSnapshotIdHasBeenSet() const
static Aws::Utils::UUID PseudoRandomUUID()
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector