7#include <aws/core/utils/UUID.h>
8#include <aws/core/utils/memory/stl/AWSMap.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/core/utils/memory/stl/AWSVector.h>
11#include <aws/finspace/FinspaceRequest.h>
12#include <aws/finspace/Finspace_EXPORTS.h>
13#include <aws/finspace/model/KxAzMode.h>
14#include <aws/finspace/model/KxNAS1Configuration.h>
15#include <aws/finspace/model/KxVolumeType.h>
43 template <
typename ClientTokenT = Aws::String>
45 m_clientTokenHasBeenSet =
true;
46 m_clientToken = std::forward<ClientTokenT>(value);
48 template <
typename ClientTokenT = Aws::String>
62 template <
typename EnvironmentIdT = Aws::String>
64 m_environmentIdHasBeenSet =
true;
65 m_environmentId = std::forward<EnvironmentIdT>(value);
67 template <
typename EnvironmentIdT = Aws::String>
83 m_volumeTypeHasBeenSet =
true;
98 template <
typename VolumeNameT = Aws::String>
100 m_volumeNameHasBeenSet =
true;
101 m_volumeName = std::forward<VolumeNameT>(value);
103 template <
typename VolumeNameT = Aws::String>
116 template <
typename DescriptionT = Aws::String>
118 m_descriptionHasBeenSet =
true;
119 m_description = std::forward<DescriptionT>(value);
121 template <
typename DescriptionT = Aws::String>
136 template <
typename Nas1ConfigurationT = KxNAS1Configuration>
138 m_nas1ConfigurationHasBeenSet =
true;
139 m_nas1Configuration = std::forward<Nas1ConfigurationT>(value);
141 template <
typename Nas1ConfigurationT = KxNAS1Configuration>
157 m_azModeHasBeenSet =
true;
172 template <
typename AvailabilityZoneIdsT = Aws::Vector<Aws::String>>
174 m_availabilityZoneIdsHasBeenSet =
true;
175 m_availabilityZoneIds = std::forward<AvailabilityZoneIdsT>(value);
177 template <
typename AvailabilityZoneIdsT = Aws::Vector<Aws::String>>
182 template <
typename AvailabilityZoneIdsT = Aws::String>
184 m_availabilityZoneIdsHasBeenSet =
true;
185 m_availabilityZoneIds.emplace_back(std::forward<AvailabilityZoneIdsT>(value));
197 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
199 m_tagsHasBeenSet =
true;
200 m_tags = std::forward<TagsT>(value);
202 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
204 SetTags(std::forward<TagsT>(value));
207 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
209 m_tagsHasBeenSet =
true;
210 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
216 bool m_clientTokenHasBeenSet =
true;
219 bool m_environmentIdHasBeenSet =
false;
222 bool m_volumeTypeHasBeenSet =
false;
225 bool m_volumeNameHasBeenSet =
false;
228 bool m_descriptionHasBeenSet =
false;
230 KxNAS1Configuration m_nas1Configuration;
231 bool m_nas1ConfigurationHasBeenSet =
false;
234 bool m_azModeHasBeenSet =
false;
237 bool m_availabilityZoneIdsHasBeenSet =
false;
240 bool m_tagsHasBeenSet =
false;
static Aws::Utils::UUID PseudoRandomUUID()
bool EnvironmentIdHasBeenSet() const
bool VolumeTypeHasBeenSet() const
CreateKxVolumeRequest & WithTags(TagsT &&value)
AWS_FINSPACE_API Aws::String SerializePayload() const override
const Aws::String & GetEnvironmentId() const
bool TagsHasBeenSet() const
void SetEnvironmentId(EnvironmentIdT &&value)
void SetDescription(DescriptionT &&value)
CreateKxVolumeRequest & WithClientToken(ClientTokenT &&value)
CreateKxVolumeRequest & WithDescription(DescriptionT &&value)
void SetClientToken(ClientTokenT &&value)
CreateKxVolumeRequest & WithEnvironmentId(EnvironmentIdT &&value)
const Aws::String & GetVolumeName() const
CreateKxVolumeRequest & WithAvailabilityZoneIds(AvailabilityZoneIdsT &&value)
void SetAvailabilityZoneIds(AvailabilityZoneIdsT &&value)
KxAzMode GetAzMode() const
bool ClientTokenHasBeenSet() const
CreateKxVolumeRequest & WithVolumeName(VolumeNameT &&value)
void SetAzMode(KxAzMode value)
CreateKxVolumeRequest & WithAzMode(KxAzMode value)
void SetVolumeName(VolumeNameT &&value)
void SetTags(TagsT &&value)
virtual const char * GetServiceRequestName() const override
bool VolumeNameHasBeenSet() const
bool AvailabilityZoneIdsHasBeenSet() const
const Aws::String & GetDescription() const
CreateKxVolumeRequest & AddAvailabilityZoneIds(AvailabilityZoneIdsT &&value)
bool DescriptionHasBeenSet() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
AWS_FINSPACE_API CreateKxVolumeRequest()=default
const KxNAS1Configuration & GetNas1Configuration() const
void SetVolumeType(KxVolumeType value)
CreateKxVolumeRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
bool Nas1ConfigurationHasBeenSet() const
CreateKxVolumeRequest & WithNas1Configuration(Nas1ConfigurationT &&value)
const Aws::String & GetClientToken() const
KxVolumeType GetVolumeType() const
CreateKxVolumeRequest & WithVolumeType(KxVolumeType value)
void SetNas1Configuration(Nas1ConfigurationT &&value)
const Aws::Vector< Aws::String > & GetAvailabilityZoneIds() const
bool AzModeHasBeenSet() const
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector