7#include <aws/fsx/FSx_EXPORTS.h>
8#include <aws/fsx/FSxRequest.h>
9#include <aws/core/utils/memory/stl/AWSString.h>
10#include <aws/fsx/model/FileCacheType.h>
11#include <aws/core/utils/memory/stl/AWSVector.h>
12#include <aws/fsx/model/CreateFileCacheLustreConfiguration.h>
13#include <aws/fsx/model/Tag.h>
14#include <aws/fsx/model/FileCacheDataRepositoryAssociation.h>
16#include <aws/core/utils/UUID.h>
57 template<
typename ClientRequestTokenT = Aws::String>
58 void SetClientRequestToken(ClientRequestTokenT&& value) { m_clientRequestTokenHasBeenSet =
true; m_clientRequestToken = std::forward<ClientRequestTokenT>(value); }
59 template<
typename ClientRequestTokenT = Aws::String>
81 template<
typename FileCacheTypeVersionT = Aws::String>
82 void SetFileCacheTypeVersion(FileCacheTypeVersionT&& value) { m_fileCacheTypeVersionHasBeenSet =
true; m_fileCacheTypeVersion = std::forward<FileCacheTypeVersionT>(value); }
83 template<
typename FileCacheTypeVersionT = Aws::String>
94 inline void SetStorageCapacity(
int value) { m_storageCapacityHasBeenSet =
true; m_storageCapacity = value; }
102 template<
typename SubnetIdsT = Aws::Vector<Aws::String>>
103 void SetSubnetIds(SubnetIdsT&& value) { m_subnetIdsHasBeenSet =
true; m_subnetIds = std::forward<SubnetIdsT>(value); }
104 template<
typename SubnetIdsT = Aws::Vector<Aws::String>>
106 template<
typename SubnetIdsT = Aws::String>
118 template<
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
119 void SetSecurityGroupIds(SecurityGroupIdsT&& value) { m_securityGroupIdsHasBeenSet =
true; m_securityGroupIds = std::forward<SecurityGroupIdsT>(value); }
120 template<
typename SecurityGroupIdsT = Aws::Vector<Aws::String>>
122 template<
typename SecurityGroupIdsT = Aws::String>
130 template<
typename TagsT = Aws::Vector<Tag>>
131 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
132 template<
typename TagsT = Aws::Vector<Tag>>
134 template<
typename TagsT = Tag>
160 template<
typename KmsKeyIdT = Aws::String>
161 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet =
true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
162 template<
typename KmsKeyIdT = Aws::String>
172 template<
typename LustreConfigurationT = CreateFileCacheLustreConfiguration>
173 void SetLustreConfiguration(LustreConfigurationT&& value) { m_lustreConfigurationHasBeenSet =
true; m_lustreConfiguration = std::forward<LustreConfigurationT>(value); }
174 template<
typename LustreConfigurationT = CreateFileCacheLustreConfiguration>
192 template<
typename DataRepositoryAssociationsT = Aws::Vector<FileCacheDataRepositoryAssociation>>
193 void SetDataRepositoryAssociations(DataRepositoryAssociationsT&& value) { m_dataRepositoryAssociationsHasBeenSet =
true; m_dataRepositoryAssociations = std::forward<DataRepositoryAssociationsT>(value); }
194 template<
typename DataRepositoryAssociationsT = Aws::Vector<FileCacheDataRepositoryAssociation>>
196 template<
typename DataRepositoryAssociationsT = FileCacheDataRepositoryAssociation>
202 bool m_clientRequestTokenHasBeenSet =
true;
205 bool m_fileCacheTypeHasBeenSet =
false;
208 bool m_fileCacheTypeVersionHasBeenSet =
false;
210 int m_storageCapacity{0};
211 bool m_storageCapacityHasBeenSet =
false;
214 bool m_subnetIdsHasBeenSet =
false;
217 bool m_securityGroupIdsHasBeenSet =
false;
220 bool m_tagsHasBeenSet =
false;
222 bool m_copyTagsToDataRepositoryAssociations{
false};
223 bool m_copyTagsToDataRepositoryAssociationsHasBeenSet =
false;
226 bool m_kmsKeyIdHasBeenSet =
false;
228 CreateFileCacheLustreConfiguration m_lustreConfiguration;
229 bool m_lustreConfigurationHasBeenSet =
false;
232 bool m_dataRepositoryAssociationsHasBeenSet =
false;
void SetKmsKeyId(KmsKeyIdT &&value)
void SetStorageCapacity(int value)
const Aws::String & GetFileCacheTypeVersion() const
AWS_FSX_API CreateFileCacheRequest()=default
CreateFileCacheRequest & AddSecurityGroupIds(SecurityGroupIdsT &&value)
void SetLustreConfiguration(LustreConfigurationT &&value)
CreateFileCacheRequest & AddDataRepositoryAssociations(DataRepositoryAssociationsT &&value)
CreateFileCacheRequest & WithCopyTagsToDataRepositoryAssociations(bool value)
CreateFileCacheRequest & AddSubnetIds(SubnetIdsT &&value)
bool SecurityGroupIdsHasBeenSet() const
void SetTags(TagsT &&value)
const Aws::Vector< Aws::String > & GetSubnetIds() const
const Aws::Vector< FileCacheDataRepositoryAssociation > & GetDataRepositoryAssociations() const
CreateFileCacheRequest & WithTags(TagsT &&value)
void SetDataRepositoryAssociations(DataRepositoryAssociationsT &&value)
bool DataRepositoryAssociationsHasBeenSet() const
virtual const char * GetServiceRequestName() const override
const Aws::String & GetClientRequestToken() const
AWS_FSX_API Aws::String SerializePayload() const override
bool SubnetIdsHasBeenSet() const
bool LustreConfigurationHasBeenSet() const
const CreateFileCacheLustreConfiguration & GetLustreConfiguration() const
CreateFileCacheRequest & AddTags(TagsT &&value)
CreateFileCacheRequest & WithLustreConfiguration(LustreConfigurationT &&value)
bool GetCopyTagsToDataRepositoryAssociations() const
const Aws::String & GetKmsKeyId() const
void SetSecurityGroupIds(SecurityGroupIdsT &&value)
bool ClientRequestTokenHasBeenSet() const
bool CopyTagsToDataRepositoryAssociationsHasBeenSet() const
bool FileCacheTypeVersionHasBeenSet() const
CreateFileCacheRequest & WithDataRepositoryAssociations(DataRepositoryAssociationsT &&value)
bool FileCacheTypeHasBeenSet() const
AWS_FSX_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override
const Aws::Vector< Tag > & GetTags() const
void SetFileCacheTypeVersion(FileCacheTypeVersionT &&value)
const Aws::Vector< Aws::String > & GetSecurityGroupIds() const
FileCacheType GetFileCacheType() const
bool TagsHasBeenSet() const
void SetCopyTagsToDataRepositoryAssociations(bool value)
CreateFileCacheRequest & WithSecurityGroupIds(SecurityGroupIdsT &&value)
CreateFileCacheRequest & WithFileCacheType(FileCacheType value)
void SetSubnetIds(SubnetIdsT &&value)
bool StorageCapacityHasBeenSet() const
CreateFileCacheRequest & WithKmsKeyId(KmsKeyIdT &&value)
CreateFileCacheRequest & WithFileCacheTypeVersion(FileCacheTypeVersionT &&value)
CreateFileCacheRequest & WithSubnetIds(SubnetIdsT &&value)
CreateFileCacheRequest & WithClientRequestToken(ClientRequestTokenT &&value)
void SetClientRequestToken(ClientRequestTokenT &&value)
void SetFileCacheType(FileCacheType value)
CreateFileCacheRequest & WithStorageCapacity(int value)
int GetStorageCapacity() const
bool KmsKeyIdHasBeenSet() const
static Aws::Utils::UUID PseudoRandomUUID()
Aws::Map< Aws::String, Aws::String > HeaderValueCollection
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector