7#include <aws/fsx/FSx_EXPORTS.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/DateTime.h>
10#include <aws/fsx/model/FileSystemType.h>
11#include <aws/fsx/model/FileSystemLifecycle.h>
12#include <aws/fsx/model/FileSystemFailureDetails.h>
13#include <aws/fsx/model/StorageType.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15#include <aws/fsx/model/WindowsFileSystemConfiguration.h>
16#include <aws/fsx/model/LustreFileSystemConfiguration.h>
17#include <aws/fsx/model/AdministrativeAction.h>
18#include <aws/fsx/model/OntapFileSystemConfiguration.h>
19#include <aws/fsx/model/OpenZFSFileSystemConfiguration.h>
20#include <aws/fsx/model/NetworkType.h>
21#include <aws/fsx/model/Tag.h>
38 class AdministrativeAction;
62 template<
typename OwnerIdT = Aws::String>
63 void SetOwnerId(OwnerIdT&& value) { m_ownerIdHasBeenSet =
true; m_ownerId = std::forward<OwnerIdT>(value); }
64 template<
typename OwnerIdT = Aws::String>
75 template<
typename CreationTimeT = Aws::Utils::DateTime>
76 void SetCreationTime(CreationTimeT&& value) { m_creationTimeHasBeenSet =
true; m_creationTime = std::forward<CreationTimeT>(value); }
77 template<
typename CreationTimeT = Aws::Utils::DateTime>
87 template<
typename FileSystemIdT = Aws::String>
88 void SetFileSystemId(FileSystemIdT&& value) { m_fileSystemIdHasBeenSet =
true; m_fileSystemId = std::forward<FileSystemIdT>(value); }
89 template<
typename FileSystemIdT = Aws::String>
131 template<
typename FailureDetailsT = FileSystemFailureDetails>
132 void SetFailureDetails(FailureDetailsT&& value) { m_failureDetailsHasBeenSet =
true; m_failureDetails = std::forward<FailureDetailsT>(value); }
133 template<
typename FailureDetailsT = FileSystemFailureDetails>
145 inline void SetStorageCapacity(
int value) { m_storageCapacityHasBeenSet =
true; m_storageCapacity = value; }
169 template<
typename VpcIdT = Aws::String>
170 void SetVpcId(VpcIdT&& value) { m_vpcIdHasBeenSet =
true; m_vpcId = std::forward<VpcIdT>(value); }
171 template<
typename VpcIdT = Aws::String>
189 template<
typename SubnetIdsT = Aws::Vector<Aws::String>>
190 void SetSubnetIds(SubnetIdsT&& value) { m_subnetIdsHasBeenSet =
true; m_subnetIds = std::forward<SubnetIdsT>(value); }
191 template<
typename SubnetIdsT = Aws::Vector<Aws::String>>
193 template<
typename SubnetIdsT = Aws::String>
194 FileSystem&
AddSubnetIds(SubnetIdsT&& value) { m_subnetIdsHasBeenSet =
true; m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
return *
this; }
211 template<
typename NetworkInterfaceIdsT = Aws::Vector<Aws::String>>
212 void SetNetworkInterfaceIds(NetworkInterfaceIdsT&& value) { m_networkInterfaceIdsHasBeenSet =
true; m_networkInterfaceIds = std::forward<NetworkInterfaceIdsT>(value); }
213 template<
typename NetworkInterfaceIdsT = Aws::Vector<Aws::String>>
215 template<
typename NetworkInterfaceIdsT = Aws::String>
216 FileSystem&
AddNetworkInterfaceIds(NetworkInterfaceIdsT&& value) { m_networkInterfaceIdsHasBeenSet =
true; m_networkInterfaceIds.emplace_back(std::forward<NetworkInterfaceIdsT>(value));
return *
this; }
225 template<
typename DNSNameT = Aws::String>
226 void SetDNSName(DNSNameT&& value) { m_dNSNameHasBeenSet =
true; m_dNSName = std::forward<DNSNameT>(value); }
227 template<
typename DNSNameT = Aws::String>
244 template<
typename KmsKeyIdT = Aws::String>
245 void SetKmsKeyId(KmsKeyIdT&& value) { m_kmsKeyIdHasBeenSet =
true; m_kmsKeyId = std::forward<KmsKeyIdT>(value); }
246 template<
typename KmsKeyIdT = Aws::String>
256 template<
typename ResourceARNT = Aws::String>
257 void SetResourceARN(ResourceARNT&& value) { m_resourceARNHasBeenSet =
true; m_resourceARN = std::forward<ResourceARNT>(value); }
258 template<
typename ResourceARNT = Aws::String>
271 template<
typename TagsT = Aws::Vector<Tag>>
272 void SetTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags = std::forward<TagsT>(value); }
273 template<
typename TagsT = Aws::Vector<Tag>>
275 template<
typename TagsT = Tag>
276 FileSystem&
AddTags(TagsT&& value) { m_tagsHasBeenSet =
true; m_tags.emplace_back(std::forward<TagsT>(value));
return *
this; }
286 template<
typename WindowsConfigurationT = WindowsFileSystemConfiguration>
287 void SetWindowsConfiguration(WindowsConfigurationT&& value) { m_windowsConfigurationHasBeenSet =
true; m_windowsConfiguration = std::forward<WindowsConfigurationT>(value); }
288 template<
typename WindowsConfigurationT = WindowsFileSystemConfiguration>
296 template<
typename LustreConfigurationT = LustreFileSystemConfiguration>
297 void SetLustreConfiguration(LustreConfigurationT&& value) { m_lustreConfigurationHasBeenSet =
true; m_lustreConfiguration = std::forward<LustreConfigurationT>(value); }
298 template<
typename LustreConfigurationT = LustreFileSystemConfiguration>
311 template<
typename AdministrativeActionsT = Aws::Vector<AdministrativeAction>>
312 void SetAdministrativeActions(AdministrativeActionsT&& value) { m_administrativeActionsHasBeenSet =
true; m_administrativeActions = std::forward<AdministrativeActionsT>(value); }
313 template<
typename AdministrativeActionsT = Aws::Vector<AdministrativeAction>>
315 template<
typename AdministrativeActionsT = AdministrativeAction>
316 FileSystem&
AddAdministrativeActions(AdministrativeActionsT&& value) { m_administrativeActionsHasBeenSet =
true; m_administrativeActions.emplace_back(std::forward<AdministrativeActionsT>(value));
return *
this; }
325 template<
typename OntapConfigurationT = OntapFileSystemConfiguration>
326 void SetOntapConfiguration(OntapConfigurationT&& value) { m_ontapConfigurationHasBeenSet =
true; m_ontapConfiguration = std::forward<OntapConfigurationT>(value); }
327 template<
typename OntapConfigurationT = OntapFileSystemConfiguration>
338 template<
typename FileSystemTypeVersionT = Aws::String>
339 void SetFileSystemTypeVersion(FileSystemTypeVersionT&& value) { m_fileSystemTypeVersionHasBeenSet =
true; m_fileSystemTypeVersion = std::forward<FileSystemTypeVersionT>(value); }
340 template<
typename FileSystemTypeVersionT = Aws::String>
350 template<
typename OpenZFSConfigurationT = OpenZFSFileSystemConfiguration>
351 void SetOpenZFSConfiguration(OpenZFSConfigurationT&& value) { m_openZFSConfigurationHasBeenSet =
true; m_openZFSConfiguration = std::forward<OpenZFSConfigurationT>(value); }
352 template<
typename OpenZFSConfigurationT = OpenZFSFileSystemConfiguration>
368 bool m_ownerIdHasBeenSet =
false;
371 bool m_creationTimeHasBeenSet =
false;
374 bool m_fileSystemIdHasBeenSet =
false;
377 bool m_fileSystemTypeHasBeenSet =
false;
380 bool m_lifecycleHasBeenSet =
false;
382 FileSystemFailureDetails m_failureDetails;
383 bool m_failureDetailsHasBeenSet =
false;
385 int m_storageCapacity{0};
386 bool m_storageCapacityHasBeenSet =
false;
389 bool m_storageTypeHasBeenSet =
false;
392 bool m_vpcIdHasBeenSet =
false;
395 bool m_subnetIdsHasBeenSet =
false;
398 bool m_networkInterfaceIdsHasBeenSet =
false;
401 bool m_dNSNameHasBeenSet =
false;
404 bool m_kmsKeyIdHasBeenSet =
false;
407 bool m_resourceARNHasBeenSet =
false;
410 bool m_tagsHasBeenSet =
false;
412 WindowsFileSystemConfiguration m_windowsConfiguration;
413 bool m_windowsConfigurationHasBeenSet =
false;
415 LustreFileSystemConfiguration m_lustreConfiguration;
416 bool m_lustreConfigurationHasBeenSet =
false;
419 bool m_administrativeActionsHasBeenSet =
false;
421 OntapFileSystemConfiguration m_ontapConfiguration;
422 bool m_ontapConfigurationHasBeenSet =
false;
425 bool m_fileSystemTypeVersionHasBeenSet =
false;
427 OpenZFSFileSystemConfiguration m_openZFSConfiguration;
428 bool m_openZFSConfigurationHasBeenSet =
false;
431 bool m_networkTypeHasBeenSet =
false;
bool ResourceARNHasBeenSet() const
FileSystem & WithSubnetIds(SubnetIdsT &&value)
FileSystem & AddSubnetIds(SubnetIdsT &&value)
bool OpenZFSConfigurationHasBeenSet() const
FileSystem & WithVpcId(VpcIdT &&value)
const LustreFileSystemConfiguration & GetLustreConfiguration() const
NetworkType GetNetworkType() const
FileSystem & WithOntapConfiguration(OntapConfigurationT &&value)
bool FileSystemTypeVersionHasBeenSet() const
const Aws::Vector< AdministrativeAction > & GetAdministrativeActions() const
FileSystem & WithOpenZFSConfiguration(OpenZFSConfigurationT &&value)
bool TagsHasBeenSet() const
void SetDNSName(DNSNameT &&value)
bool NetworkTypeHasBeenSet() const
bool SubnetIdsHasBeenSet() const
void SetFileSystemTypeVersion(FileSystemTypeVersionT &&value)
AWS_FSX_API FileSystem & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetOpenZFSConfiguration(OpenZFSConfigurationT &&value)
bool CreationTimeHasBeenSet() const
const OntapFileSystemConfiguration & GetOntapConfiguration() const
bool StorageCapacityHasBeenSet() const
AWS_FSX_API FileSystem(Aws::Utils::Json::JsonView jsonValue)
FileSystem & WithFileSystemId(FileSystemIdT &&value)
int GetStorageCapacity() const
const Aws::Vector< Aws::String > & GetNetworkInterfaceIds() const
bool NetworkInterfaceIdsHasBeenSet() const
FileSystem & WithNetworkType(NetworkType value)
void SetAdministrativeActions(AdministrativeActionsT &&value)
const Aws::String & GetOwnerId() const
void SetSubnetIds(SubnetIdsT &&value)
FileSystem & WithStorageType(StorageType value)
void SetOntapConfiguration(OntapConfigurationT &&value)
bool DNSNameHasBeenSet() const
void SetLustreConfiguration(LustreConfigurationT &&value)
const Aws::Vector< Tag > & GetTags() const
FileSystem & WithStorageCapacity(int value)
bool FailureDetailsHasBeenSet() const
FileSystem & WithFileSystemTypeVersion(FileSystemTypeVersionT &&value)
const FileSystemFailureDetails & GetFailureDetails() const
void SetStorageCapacity(int value)
void SetCreationTime(CreationTimeT &&value)
bool FileSystemTypeHasBeenSet() const
bool WindowsConfigurationHasBeenSet() const
void SetFileSystemType(FileSystemType value)
FileSystemLifecycle GetLifecycle() const
bool VpcIdHasBeenSet() const
FileSystem & AddNetworkInterfaceIds(NetworkInterfaceIdsT &&value)
FileSystem & WithResourceARN(ResourceARNT &&value)
void SetNetworkInterfaceIds(NetworkInterfaceIdsT &&value)
bool OntapConfigurationHasBeenSet() const
FileSystem & WithOwnerId(OwnerIdT &&value)
FileSystem & WithAdministrativeActions(AdministrativeActionsT &&value)
void SetStorageType(StorageType value)
FileSystem & WithTags(TagsT &&value)
FileSystem & AddAdministrativeActions(AdministrativeActionsT &&value)
void SetResourceARN(ResourceARNT &&value)
const Aws::String & GetKmsKeyId() const
bool AdministrativeActionsHasBeenSet() const
bool OwnerIdHasBeenSet() const
void SetVpcId(VpcIdT &&value)
const Aws::String & GetResourceARN() const
const OpenZFSFileSystemConfiguration & GetOpenZFSConfiguration() const
FileSystem & WithLustreConfiguration(LustreConfigurationT &&value)
void SetFileSystemId(FileSystemIdT &&value)
void SetTags(TagsT &&value)
FileSystemType GetFileSystemType() const
const Aws::String & GetDNSName() const
bool LifecycleHasBeenSet() const
const Aws::Vector< Aws::String > & GetSubnetIds() const
bool LustreConfigurationHasBeenSet() const
void SetNetworkType(NetworkType value)
AWS_FSX_API FileSystem()=default
bool StorageTypeHasBeenSet() const
FileSystem & WithWindowsConfiguration(WindowsConfigurationT &&value)
const Aws::Utils::DateTime & GetCreationTime() const
const Aws::String & GetVpcId() const
bool KmsKeyIdHasBeenSet() const
FileSystem & AddTags(TagsT &&value)
FileSystem & WithFailureDetails(FailureDetailsT &&value)
void SetFailureDetails(FailureDetailsT &&value)
FileSystem & WithKmsKeyId(KmsKeyIdT &&value)
FileSystem & WithLifecycle(FileSystemLifecycle value)
FileSystem & WithFileSystemType(FileSystemType value)
const Aws::String & GetFileSystemId() const
bool FileSystemIdHasBeenSet() const
FileSystem & WithCreationTime(CreationTimeT &&value)
AWS_FSX_API Aws::Utils::Json::JsonValue Jsonize() const
void SetOwnerId(OwnerIdT &&value)
FileSystem & WithNetworkInterfaceIds(NetworkInterfaceIdsT &&value)
void SetWindowsConfiguration(WindowsConfigurationT &&value)
FileSystem & WithDNSName(DNSNameT &&value)
StorageType GetStorageType() const
void SetLifecycle(FileSystemLifecycle value)
const Aws::String & GetFileSystemTypeVersion() const
void SetKmsKeyId(KmsKeyIdT &&value)
const WindowsFileSystemConfiguration & GetWindowsConfiguration() const
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector
Aws::Utils::Json::JsonValue JsonValue