7#include <aws/core/utils/DateTime.h>
8#include <aws/core/utils/memory/stl/AWSString.h>
9#include <aws/core/utils/memory/stl/AWSVector.h>
10#include <aws/fsx/FSx_EXPORTS.h>
11#include <aws/fsx/model/AdministrativeAction.h>
12#include <aws/fsx/model/FileSystemFailureDetails.h>
13#include <aws/fsx/model/FileSystemLifecycle.h>
14#include <aws/fsx/model/FileSystemType.h>
15#include <aws/fsx/model/LustreFileSystemConfiguration.h>
16#include <aws/fsx/model/NetworkType.h>
17#include <aws/fsx/model/OntapFileSystemConfiguration.h>
18#include <aws/fsx/model/OpenZFSFileSystemConfiguration.h>
19#include <aws/fsx/model/StorageType.h>
20#include <aws/fsx/model/Tag.h>
21#include <aws/fsx/model/WindowsFileSystemConfiguration.h>
34class AdministrativeAction;
56 template <
typename OwnerIdT = Aws::String>
58 m_ownerIdHasBeenSet =
true;
59 m_ownerId = std::forward<OwnerIdT>(value);
61 template <
typename OwnerIdT = Aws::String>
75 template <
typename CreationTimeT = Aws::Utils::DateTime>
77 m_creationTimeHasBeenSet =
true;
78 m_creationTime = std::forward<CreationTimeT>(value);
80 template <
typename CreationTimeT = Aws::Utils::DateTime>
93 template <
typename FileSystemIdT = Aws::String>
95 m_fileSystemIdHasBeenSet =
true;
96 m_fileSystemId = std::forward<FileSystemIdT>(value);
98 template <
typename FileSystemIdT = Aws::String>
113 m_fileSystemTypeHasBeenSet =
true;
114 m_fileSystemType = value;
142 m_lifecycleHasBeenSet =
true;
155 template <
typename FailureDetailsT = FileSystemFailureDetails>
157 m_failureDetailsHasBeenSet =
true;
158 m_failureDetails = std::forward<FailureDetailsT>(value);
160 template <
typename FailureDetailsT = FileSystemFailureDetails>
176 m_storageCapacityHasBeenSet =
true;
177 m_storageCapacity = value;
196 m_storageTypeHasBeenSet =
true;
197 m_storageType = value;
211 template <
typename VpcIdT = Aws::String>
213 m_vpcIdHasBeenSet =
true;
214 m_vpcId = std::forward<VpcIdT>(value);
216 template <
typename VpcIdT = Aws::String>
218 SetVpcId(std::forward<VpcIdT>(value));
237 template <
typename SubnetIdsT = Aws::Vector<Aws::String>>
239 m_subnetIdsHasBeenSet =
true;
240 m_subnetIds = std::forward<SubnetIdsT>(value);
242 template <
typename SubnetIdsT = Aws::Vector<Aws::String>>
247 template <
typename SubnetIdsT = Aws::String>
249 m_subnetIdsHasBeenSet =
true;
250 m_subnetIds.emplace_back(std::forward<SubnetIdsT>(value));
269 template <
typename NetworkInterfaceIdsT = Aws::Vector<Aws::String>>
271 m_networkInterfaceIdsHasBeenSet =
true;
272 m_networkInterfaceIds = std::forward<NetworkInterfaceIdsT>(value);
274 template <
typename NetworkInterfaceIdsT = Aws::Vector<Aws::String>>
279 template <
typename NetworkInterfaceIdsT = Aws::String>
281 m_networkInterfaceIdsHasBeenSet =
true;
282 m_networkInterfaceIds.emplace_back(std::forward<NetworkInterfaceIdsT>(value));
293 template <
typename DNSNameT = Aws::String>
295 m_dNSNameHasBeenSet =
true;
296 m_dNSName = std::forward<DNSNameT>(value);
298 template <
typename DNSNameT = Aws::String>
318 template <
typename KmsKeyIdT = Aws::String>
320 m_kmsKeyIdHasBeenSet =
true;
321 m_kmsKeyId = std::forward<KmsKeyIdT>(value);
323 template <
typename KmsKeyIdT = Aws::String>
336 template <
typename ResourceARNT = Aws::String>
338 m_resourceARNHasBeenSet =
true;
339 m_resourceARN = std::forward<ResourceARNT>(value);
341 template <
typename ResourceARNT = Aws::String>
357 template <
typename TagsT = Aws::Vector<Tag>>
359 m_tagsHasBeenSet =
true;
360 m_tags = std::forward<TagsT>(value);
362 template <
typename TagsT = Aws::Vector<Tag>>
364 SetTags(std::forward<TagsT>(value));
367 template <
typename TagsT = Tag>
369 m_tagsHasBeenSet =
true;
370 m_tags.emplace_back(std::forward<TagsT>(value));
382 template <
typename WindowsConfigurationT = WindowsFileSystemConfiguration>
384 m_windowsConfigurationHasBeenSet =
true;
385 m_windowsConfiguration = std::forward<WindowsConfigurationT>(value);
387 template <
typename WindowsConfigurationT = WindowsFileSystemConfiguration>
398 template <
typename LustreConfigurationT = LustreFileSystemConfiguration>
400 m_lustreConfigurationHasBeenSet =
true;
401 m_lustreConfiguration = std::forward<LustreConfigurationT>(value);
403 template <
typename LustreConfigurationT = LustreFileSystemConfiguration>
419 template <
typename AdministrativeActionsT = Aws::Vector<AdministrativeAction>>
421 m_administrativeActionsHasBeenSet =
true;
422 m_administrativeActions = std::forward<AdministrativeActionsT>(value);
424 template <
typename AdministrativeActionsT = Aws::Vector<AdministrativeAction>>
429 template <
typename AdministrativeActionsT = AdministrativeAction>
431 m_administrativeActionsHasBeenSet =
true;
432 m_administrativeActions.emplace_back(std::forward<AdministrativeActionsT>(value));
443 template <
typename OntapConfigurationT = OntapFileSystemConfiguration>
445 m_ontapConfigurationHasBeenSet =
true;
446 m_ontapConfiguration = std::forward<OntapConfigurationT>(value);
448 template <
typename OntapConfigurationT = OntapFileSystemConfiguration>
462 template <
typename FileSystemTypeVersionT = Aws::String>
464 m_fileSystemTypeVersionHasBeenSet =
true;
465 m_fileSystemTypeVersion = std::forward<FileSystemTypeVersionT>(value);
467 template <
typename FileSystemTypeVersionT = Aws::String>
480 template <
typename OpenZFSConfigurationT = OpenZFSFileSystemConfiguration>
482 m_openZFSConfigurationHasBeenSet =
true;
483 m_openZFSConfiguration = std::forward<OpenZFSConfigurationT>(value);
485 template <
typename OpenZFSConfigurationT = OpenZFSFileSystemConfiguration>
499 m_networkTypeHasBeenSet =
true;
500 m_networkType = value;
518 FileSystemFailureDetails m_failureDetails;
520 int m_storageCapacity{0};
538 WindowsFileSystemConfiguration m_windowsConfiguration;
540 LustreFileSystemConfiguration m_lustreConfiguration;
544 OntapFileSystemConfiguration m_ontapConfiguration;
548 OpenZFSFileSystemConfiguration m_openZFSConfiguration;
551 bool m_ownerIdHasBeenSet =
false;
552 bool m_creationTimeHasBeenSet =
false;
553 bool m_fileSystemIdHasBeenSet =
false;
554 bool m_fileSystemTypeHasBeenSet =
false;
555 bool m_lifecycleHasBeenSet =
false;
556 bool m_failureDetailsHasBeenSet =
false;
557 bool m_storageCapacityHasBeenSet =
false;
558 bool m_storageTypeHasBeenSet =
false;
559 bool m_vpcIdHasBeenSet =
false;
560 bool m_subnetIdsHasBeenSet =
false;
561 bool m_networkInterfaceIdsHasBeenSet =
false;
562 bool m_dNSNameHasBeenSet =
false;
563 bool m_kmsKeyIdHasBeenSet =
false;
564 bool m_resourceARNHasBeenSet =
false;
565 bool m_tagsHasBeenSet =
false;
566 bool m_windowsConfigurationHasBeenSet =
false;
567 bool m_lustreConfigurationHasBeenSet =
false;
568 bool m_administrativeActionsHasBeenSet =
false;
569 bool m_ontapConfigurationHasBeenSet =
false;
570 bool m_fileSystemTypeVersionHasBeenSet =
false;
571 bool m_openZFSConfigurationHasBeenSet =
false;
572 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