/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The configuration of a data repository association that links an Amazon FSx
* for Lustre file system to an Amazon S3 bucket or an Amazon File Cache resource
* to an Amazon S3 bucket or an NFS file system. The data repository association
* configuration object is returned in the response of the following
* operations:
* Data
* repository associations are supported on Amazon File Cache resources and all FSx
* for Lustre 2.12 and newer file systems, excluding
CreateDataRepositoryAssociation
UpdateDataRepositoryAssociation
DescribeDataRepositoryAssociations
scratch_1
* deployment type.See Also:
AWS
* API Reference
The system-generated, unique ID of the data repository association.
*/ inline const Aws::String& GetAssociationId() const{ return m_associationId; } /** *The system-generated, unique ID of the data repository association.
*/ inline bool AssociationIdHasBeenSet() const { return m_associationIdHasBeenSet; } /** *The system-generated, unique ID of the data repository association.
*/ inline void SetAssociationId(const Aws::String& value) { m_associationIdHasBeenSet = true; m_associationId = value; } /** *The system-generated, unique ID of the data repository association.
*/ inline void SetAssociationId(Aws::String&& value) { m_associationIdHasBeenSet = true; m_associationId = std::move(value); } /** *The system-generated, unique ID of the data repository association.
*/ inline void SetAssociationId(const char* value) { m_associationIdHasBeenSet = true; m_associationId.assign(value); } /** *The system-generated, unique ID of the data repository association.
*/ inline DataRepositoryAssociation& WithAssociationId(const Aws::String& value) { SetAssociationId(value); return *this;} /** *The system-generated, unique ID of the data repository association.
*/ inline DataRepositoryAssociation& WithAssociationId(Aws::String&& value) { SetAssociationId(std::move(value)); return *this;} /** *The system-generated, unique ID of the data repository association.
*/ inline DataRepositoryAssociation& WithAssociationId(const char* value) { SetAssociationId(value); return *this;} inline const Aws::String& GetResourceARN() const{ return m_resourceARN; } inline bool ResourceARNHasBeenSet() const { return m_resourceARNHasBeenSet; } inline void SetResourceARN(const Aws::String& value) { m_resourceARNHasBeenSet = true; m_resourceARN = value; } inline void SetResourceARN(Aws::String&& value) { m_resourceARNHasBeenSet = true; m_resourceARN = std::move(value); } inline void SetResourceARN(const char* value) { m_resourceARNHasBeenSet = true; m_resourceARN.assign(value); } inline DataRepositoryAssociation& WithResourceARN(const Aws::String& value) { SetResourceARN(value); return *this;} inline DataRepositoryAssociation& WithResourceARN(Aws::String&& value) { SetResourceARN(std::move(value)); return *this;} inline DataRepositoryAssociation& WithResourceARN(const char* value) { SetResourceARN(value); return *this;} inline const Aws::String& GetFileSystemId() const{ return m_fileSystemId; } inline bool FileSystemIdHasBeenSet() const { return m_fileSystemIdHasBeenSet; } inline void SetFileSystemId(const Aws::String& value) { m_fileSystemIdHasBeenSet = true; m_fileSystemId = value; } inline void SetFileSystemId(Aws::String&& value) { m_fileSystemIdHasBeenSet = true; m_fileSystemId = std::move(value); } inline void SetFileSystemId(const char* value) { m_fileSystemIdHasBeenSet = true; m_fileSystemId.assign(value); } inline DataRepositoryAssociation& WithFileSystemId(const Aws::String& value) { SetFileSystemId(value); return *this;} inline DataRepositoryAssociation& WithFileSystemId(Aws::String&& value) { SetFileSystemId(std::move(value)); return *this;} inline DataRepositoryAssociation& WithFileSystemId(const char* value) { SetFileSystemId(value); return *this;} /** *Describes the state of a data repository association. The lifecycle can have * the following values:
CREATING
- The data
* repository association between the file system or cache and the data repository
* is being created. The data repository is unavailable.
* AVAILABLE
- The data repository association is available for
* use.
MISCONFIGURED
- The data repository
* association is misconfigured. Until the configuration is corrected, automatic
* import and automatic export will not work (only for Amazon FSx for Lustre).
UPDATING
- The data repository association is
* undergoing a customer initiated update that might affect its availability.
DELETING
- The data repository association is
* undergoing a customer initiated deletion.
FAILED
* - The data repository association is in a terminal state that cannot be
* recovered.
Describes the state of a data repository association. The lifecycle can have * the following values:
CREATING
- The data
* repository association between the file system or cache and the data repository
* is being created. The data repository is unavailable.
* AVAILABLE
- The data repository association is available for
* use.
MISCONFIGURED
- The data repository
* association is misconfigured. Until the configuration is corrected, automatic
* import and automatic export will not work (only for Amazon FSx for Lustre).
UPDATING
- The data repository association is
* undergoing a customer initiated update that might affect its availability.
DELETING
- The data repository association is
* undergoing a customer initiated deletion.
FAILED
* - The data repository association is in a terminal state that cannot be
* recovered.
Describes the state of a data repository association. The lifecycle can have * the following values:
CREATING
- The data
* repository association between the file system or cache and the data repository
* is being created. The data repository is unavailable.
* AVAILABLE
- The data repository association is available for
* use.
MISCONFIGURED
- The data repository
* association is misconfigured. Until the configuration is corrected, automatic
* import and automatic export will not work (only for Amazon FSx for Lustre).
UPDATING
- The data repository association is
* undergoing a customer initiated update that might affect its availability.
DELETING
- The data repository association is
* undergoing a customer initiated deletion.
FAILED
* - The data repository association is in a terminal state that cannot be
* recovered.
Describes the state of a data repository association. The lifecycle can have * the following values:
CREATING
- The data
* repository association between the file system or cache and the data repository
* is being created. The data repository is unavailable.
* AVAILABLE
- The data repository association is available for
* use.
MISCONFIGURED
- The data repository
* association is misconfigured. Until the configuration is corrected, automatic
* import and automatic export will not work (only for Amazon FSx for Lustre).
UPDATING
- The data repository association is
* undergoing a customer initiated update that might affect its availability.
DELETING
- The data repository association is
* undergoing a customer initiated deletion.
FAILED
* - The data repository association is in a terminal state that cannot be
* recovered.
Describes the state of a data repository association. The lifecycle can have * the following values:
CREATING
- The data
* repository association between the file system or cache and the data repository
* is being created. The data repository is unavailable.
* AVAILABLE
- The data repository association is available for
* use.
MISCONFIGURED
- The data repository
* association is misconfigured. Until the configuration is corrected, automatic
* import and automatic export will not work (only for Amazon FSx for Lustre).
UPDATING
- The data repository association is
* undergoing a customer initiated update that might affect its availability.
DELETING
- The data repository association is
* undergoing a customer initiated deletion.
FAILED
* - The data repository association is in a terminal state that cannot be
* recovered.
Describes the state of a data repository association. The lifecycle can have * the following values:
CREATING
- The data
* repository association between the file system or cache and the data repository
* is being created. The data repository is unavailable.
* AVAILABLE
- The data repository association is available for
* use.
MISCONFIGURED
- The data repository
* association is misconfigured. Until the configuration is corrected, automatic
* import and automatic export will not work (only for Amazon FSx for Lustre).
UPDATING
- The data repository association is
* undergoing a customer initiated update that might affect its availability.
DELETING
- The data repository association is
* undergoing a customer initiated deletion.
FAILED
* - The data repository association is in a terminal state that cannot be
* recovered.
A path on the Amazon FSx for Lustre file system that points to a high-level
* directory (such as /ns1/
) or subdirectory (such as
* /ns1/subdir/
) that will be mapped 1-1 with
* DataRepositoryPath
. The leading forward slash in the name is
* required. Two data repository associations cannot have overlapping file system
* paths. For example, if a data repository is associated with file system path
* /ns1/
, then you cannot link another data repository with file
* system path /ns1/ns2
.
This path specifies where in your file * system files will be exported from or imported to. This file system directory * can be linked to only one Amazon S3 bucket, and no other S3 bucket can be linked * to the directory.
If you specify only a forward slash
* (/
) as the file system path, you can link only one data repository
* to the file system. You can only specify "/" as the file system path for the
* first data repository associated with a file system.
A path on the Amazon FSx for Lustre file system that points to a high-level
* directory (such as /ns1/
) or subdirectory (such as
* /ns1/subdir/
) that will be mapped 1-1 with
* DataRepositoryPath
. The leading forward slash in the name is
* required. Two data repository associations cannot have overlapping file system
* paths. For example, if a data repository is associated with file system path
* /ns1/
, then you cannot link another data repository with file
* system path /ns1/ns2
.
This path specifies where in your file * system files will be exported from or imported to. This file system directory * can be linked to only one Amazon S3 bucket, and no other S3 bucket can be linked * to the directory.
If you specify only a forward slash
* (/
) as the file system path, you can link only one data repository
* to the file system. You can only specify "/" as the file system path for the
* first data repository associated with a file system.
A path on the Amazon FSx for Lustre file system that points to a high-level
* directory (such as /ns1/
) or subdirectory (such as
* /ns1/subdir/
) that will be mapped 1-1 with
* DataRepositoryPath
. The leading forward slash in the name is
* required. Two data repository associations cannot have overlapping file system
* paths. For example, if a data repository is associated with file system path
* /ns1/
, then you cannot link another data repository with file
* system path /ns1/ns2
.
This path specifies where in your file * system files will be exported from or imported to. This file system directory * can be linked to only one Amazon S3 bucket, and no other S3 bucket can be linked * to the directory.
If you specify only a forward slash
* (/
) as the file system path, you can link only one data repository
* to the file system. You can only specify "/" as the file system path for the
* first data repository associated with a file system.
A path on the Amazon FSx for Lustre file system that points to a high-level
* directory (such as /ns1/
) or subdirectory (such as
* /ns1/subdir/
) that will be mapped 1-1 with
* DataRepositoryPath
. The leading forward slash in the name is
* required. Two data repository associations cannot have overlapping file system
* paths. For example, if a data repository is associated with file system path
* /ns1/
, then you cannot link another data repository with file
* system path /ns1/ns2
.
This path specifies where in your file * system files will be exported from or imported to. This file system directory * can be linked to only one Amazon S3 bucket, and no other S3 bucket can be linked * to the directory.
If you specify only a forward slash
* (/
) as the file system path, you can link only one data repository
* to the file system. You can only specify "/" as the file system path for the
* first data repository associated with a file system.
A path on the Amazon FSx for Lustre file system that points to a high-level
* directory (such as /ns1/
) or subdirectory (such as
* /ns1/subdir/
) that will be mapped 1-1 with
* DataRepositoryPath
. The leading forward slash in the name is
* required. Two data repository associations cannot have overlapping file system
* paths. For example, if a data repository is associated with file system path
* /ns1/
, then you cannot link another data repository with file
* system path /ns1/ns2
.
This path specifies where in your file * system files will be exported from or imported to. This file system directory * can be linked to only one Amazon S3 bucket, and no other S3 bucket can be linked * to the directory.
If you specify only a forward slash
* (/
) as the file system path, you can link only one data repository
* to the file system. You can only specify "/" as the file system path for the
* first data repository associated with a file system.
A path on the Amazon FSx for Lustre file system that points to a high-level
* directory (such as /ns1/
) or subdirectory (such as
* /ns1/subdir/
) that will be mapped 1-1 with
* DataRepositoryPath
. The leading forward slash in the name is
* required. Two data repository associations cannot have overlapping file system
* paths. For example, if a data repository is associated with file system path
* /ns1/
, then you cannot link another data repository with file
* system path /ns1/ns2
.
This path specifies where in your file * system files will be exported from or imported to. This file system directory * can be linked to only one Amazon S3 bucket, and no other S3 bucket can be linked * to the directory.
If you specify only a forward slash
* (/
) as the file system path, you can link only one data repository
* to the file system. You can only specify "/" as the file system path for the
* first data repository associated with a file system.
A path on the Amazon FSx for Lustre file system that points to a high-level
* directory (such as /ns1/
) or subdirectory (such as
* /ns1/subdir/
) that will be mapped 1-1 with
* DataRepositoryPath
. The leading forward slash in the name is
* required. Two data repository associations cannot have overlapping file system
* paths. For example, if a data repository is associated with file system path
* /ns1/
, then you cannot link another data repository with file
* system path /ns1/ns2
.
This path specifies where in your file * system files will be exported from or imported to. This file system directory * can be linked to only one Amazon S3 bucket, and no other S3 bucket can be linked * to the directory.
If you specify only a forward slash
* (/
) as the file system path, you can link only one data repository
* to the file system. You can only specify "/" as the file system path for the
* first data repository associated with a file system.
A path on the Amazon FSx for Lustre file system that points to a high-level
* directory (such as /ns1/
) or subdirectory (such as
* /ns1/subdir/
) that will be mapped 1-1 with
* DataRepositoryPath
. The leading forward slash in the name is
* required. Two data repository associations cannot have overlapping file system
* paths. For example, if a data repository is associated with file system path
* /ns1/
, then you cannot link another data repository with file
* system path /ns1/ns2
.
This path specifies where in your file * system files will be exported from or imported to. This file system directory * can be linked to only one Amazon S3 bucket, and no other S3 bucket can be linked * to the directory.
If you specify only a forward slash
* (/
) as the file system path, you can link only one data repository
* to the file system. You can only specify "/" as the file system path for the
* first data repository associated with a file system.
The path to the data repository that will be linked to the cache or file * system.
For Amazon File Cache, the path can be an NFS data * repository that will be linked to the cache. The path can be in one of two * formats:
If you are not using the
* DataRepositorySubdirectories
parameter, the path is to an NFS
* Export directory (or one of its subdirectories) in the format
* nsf://nfs-domain-name/exportpath
. You can therefore link a single
* NFS Export to a single data repository association.
If you are
* using the DataRepositorySubdirectories
parameter, the path is the
* domain name of the NFS file system in the format
* nfs://filer-domain-name
, which indicates the root of the
* subdirectories specified with the DataRepositorySubdirectories
* parameter.
For Amazon File Cache, the path can be
* an S3 bucket or prefix in the format s3://myBucket/myPrefix/
.
For Amazon FSx for Lustre, the path can be an S3 bucket or prefix
* in the format s3://myBucket/myPrefix/
.
The path to the data repository that will be linked to the cache or file * system.
For Amazon File Cache, the path can be an NFS data * repository that will be linked to the cache. The path can be in one of two * formats:
If you are not using the
* DataRepositorySubdirectories
parameter, the path is to an NFS
* Export directory (or one of its subdirectories) in the format
* nsf://nfs-domain-name/exportpath
. You can therefore link a single
* NFS Export to a single data repository association.
If you are
* using the DataRepositorySubdirectories
parameter, the path is the
* domain name of the NFS file system in the format
* nfs://filer-domain-name
, which indicates the root of the
* subdirectories specified with the DataRepositorySubdirectories
* parameter.
For Amazon File Cache, the path can be
* an S3 bucket or prefix in the format s3://myBucket/myPrefix/
.
For Amazon FSx for Lustre, the path can be an S3 bucket or prefix
* in the format s3://myBucket/myPrefix/
.
The path to the data repository that will be linked to the cache or file * system.
For Amazon File Cache, the path can be an NFS data * repository that will be linked to the cache. The path can be in one of two * formats:
If you are not using the
* DataRepositorySubdirectories
parameter, the path is to an NFS
* Export directory (or one of its subdirectories) in the format
* nsf://nfs-domain-name/exportpath
. You can therefore link a single
* NFS Export to a single data repository association.
If you are
* using the DataRepositorySubdirectories
parameter, the path is the
* domain name of the NFS file system in the format
* nfs://filer-domain-name
, which indicates the root of the
* subdirectories specified with the DataRepositorySubdirectories
* parameter.
For Amazon File Cache, the path can be
* an S3 bucket or prefix in the format s3://myBucket/myPrefix/
.
For Amazon FSx for Lustre, the path can be an S3 bucket or prefix
* in the format s3://myBucket/myPrefix/
.
The path to the data repository that will be linked to the cache or file * system.
For Amazon File Cache, the path can be an NFS data * repository that will be linked to the cache. The path can be in one of two * formats:
If you are not using the
* DataRepositorySubdirectories
parameter, the path is to an NFS
* Export directory (or one of its subdirectories) in the format
* nsf://nfs-domain-name/exportpath
. You can therefore link a single
* NFS Export to a single data repository association.
If you are
* using the DataRepositorySubdirectories
parameter, the path is the
* domain name of the NFS file system in the format
* nfs://filer-domain-name
, which indicates the root of the
* subdirectories specified with the DataRepositorySubdirectories
* parameter.
For Amazon File Cache, the path can be
* an S3 bucket or prefix in the format s3://myBucket/myPrefix/
.
For Amazon FSx for Lustre, the path can be an S3 bucket or prefix
* in the format s3://myBucket/myPrefix/
.
The path to the data repository that will be linked to the cache or file * system.
For Amazon File Cache, the path can be an NFS data * repository that will be linked to the cache. The path can be in one of two * formats:
If you are not using the
* DataRepositorySubdirectories
parameter, the path is to an NFS
* Export directory (or one of its subdirectories) in the format
* nsf://nfs-domain-name/exportpath
. You can therefore link a single
* NFS Export to a single data repository association.
If you are
* using the DataRepositorySubdirectories
parameter, the path is the
* domain name of the NFS file system in the format
* nfs://filer-domain-name
, which indicates the root of the
* subdirectories specified with the DataRepositorySubdirectories
* parameter.
For Amazon File Cache, the path can be
* an S3 bucket or prefix in the format s3://myBucket/myPrefix/
.
For Amazon FSx for Lustre, the path can be an S3 bucket or prefix
* in the format s3://myBucket/myPrefix/
.
The path to the data repository that will be linked to the cache or file * system.
For Amazon File Cache, the path can be an NFS data * repository that will be linked to the cache. The path can be in one of two * formats:
If you are not using the
* DataRepositorySubdirectories
parameter, the path is to an NFS
* Export directory (or one of its subdirectories) in the format
* nsf://nfs-domain-name/exportpath
. You can therefore link a single
* NFS Export to a single data repository association.
If you are
* using the DataRepositorySubdirectories
parameter, the path is the
* domain name of the NFS file system in the format
* nfs://filer-domain-name
, which indicates the root of the
* subdirectories specified with the DataRepositorySubdirectories
* parameter.
For Amazon File Cache, the path can be
* an S3 bucket or prefix in the format s3://myBucket/myPrefix/
.
For Amazon FSx for Lustre, the path can be an S3 bucket or prefix
* in the format s3://myBucket/myPrefix/
.
The path to the data repository that will be linked to the cache or file * system.
For Amazon File Cache, the path can be an NFS data * repository that will be linked to the cache. The path can be in one of two * formats:
If you are not using the
* DataRepositorySubdirectories
parameter, the path is to an NFS
* Export directory (or one of its subdirectories) in the format
* nsf://nfs-domain-name/exportpath
. You can therefore link a single
* NFS Export to a single data repository association.
If you are
* using the DataRepositorySubdirectories
parameter, the path is the
* domain name of the NFS file system in the format
* nfs://filer-domain-name
, which indicates the root of the
* subdirectories specified with the DataRepositorySubdirectories
* parameter.
For Amazon File Cache, the path can be
* an S3 bucket or prefix in the format s3://myBucket/myPrefix/
.
For Amazon FSx for Lustre, the path can be an S3 bucket or prefix
* in the format s3://myBucket/myPrefix/
.
The path to the data repository that will be linked to the cache or file * system.
For Amazon File Cache, the path can be an NFS data * repository that will be linked to the cache. The path can be in one of two * formats:
If you are not using the
* DataRepositorySubdirectories
parameter, the path is to an NFS
* Export directory (or one of its subdirectories) in the format
* nsf://nfs-domain-name/exportpath
. You can therefore link a single
* NFS Export to a single data repository association.
If you are
* using the DataRepositorySubdirectories
parameter, the path is the
* domain name of the NFS file system in the format
* nfs://filer-domain-name
, which indicates the root of the
* subdirectories specified with the DataRepositorySubdirectories
* parameter.
For Amazon File Cache, the path can be
* an S3 bucket or prefix in the format s3://myBucket/myPrefix/
.
For Amazon FSx for Lustre, the path can be an S3 bucket or prefix
* in the format s3://myBucket/myPrefix/
.
A boolean flag indicating whether an import data repository task to import
* metadata should run after the data repository association is created. The task
* runs if this flag is set to true
.
* BatchImportMetaDataOnCreate
is not supported for data repositories
* linked to an Amazon File Cache resource.
A boolean flag indicating whether an import data repository task to import
* metadata should run after the data repository association is created. The task
* runs if this flag is set to true
.
* BatchImportMetaDataOnCreate
is not supported for data repositories
* linked to an Amazon File Cache resource.
A boolean flag indicating whether an import data repository task to import
* metadata should run after the data repository association is created. The task
* runs if this flag is set to true
.
* BatchImportMetaDataOnCreate
is not supported for data repositories
* linked to an Amazon File Cache resource.
A boolean flag indicating whether an import data repository task to import
* metadata should run after the data repository association is created. The task
* runs if this flag is set to true
.
* BatchImportMetaDataOnCreate
is not supported for data repositories
* linked to an Amazon File Cache resource.
For files imported from a data repository, this value determines the stripe * count and maximum amount of data per file (in MiB) stored on a single physical * disk. The maximum number of disks that a single file can be striped across is * limited by the total number of disks that make up the file system or cache.
*The default chunk size is 1,024 MiB (1 GiB) and can go as high as 512,000 MiB * (500 GiB). Amazon S3 objects have a maximum size of 5 TB.
*/ inline int GetImportedFileChunkSize() const{ return m_importedFileChunkSize; } /** *For files imported from a data repository, this value determines the stripe * count and maximum amount of data per file (in MiB) stored on a single physical * disk. The maximum number of disks that a single file can be striped across is * limited by the total number of disks that make up the file system or cache.
*The default chunk size is 1,024 MiB (1 GiB) and can go as high as 512,000 MiB * (500 GiB). Amazon S3 objects have a maximum size of 5 TB.
*/ inline bool ImportedFileChunkSizeHasBeenSet() const { return m_importedFileChunkSizeHasBeenSet; } /** *For files imported from a data repository, this value determines the stripe * count and maximum amount of data per file (in MiB) stored on a single physical * disk. The maximum number of disks that a single file can be striped across is * limited by the total number of disks that make up the file system or cache.
*The default chunk size is 1,024 MiB (1 GiB) and can go as high as 512,000 MiB * (500 GiB). Amazon S3 objects have a maximum size of 5 TB.
*/ inline void SetImportedFileChunkSize(int value) { m_importedFileChunkSizeHasBeenSet = true; m_importedFileChunkSize = value; } /** *For files imported from a data repository, this value determines the stripe * count and maximum amount of data per file (in MiB) stored on a single physical * disk. The maximum number of disks that a single file can be striped across is * limited by the total number of disks that make up the file system or cache.
*The default chunk size is 1,024 MiB (1 GiB) and can go as high as 512,000 MiB * (500 GiB). Amazon S3 objects have a maximum size of 5 TB.
*/ inline DataRepositoryAssociation& WithImportedFileChunkSize(int value) { SetImportedFileChunkSize(value); return *this;} /** *The configuration for an Amazon S3 data repository linked to an Amazon FSx * for Lustre file system with a data repository association.
*/ inline const S3DataRepositoryConfiguration& GetS3() const{ return m_s3; } /** *The configuration for an Amazon S3 data repository linked to an Amazon FSx * for Lustre file system with a data repository association.
*/ inline bool S3HasBeenSet() const { return m_s3HasBeenSet; } /** *The configuration for an Amazon S3 data repository linked to an Amazon FSx * for Lustre file system with a data repository association.
*/ inline void SetS3(const S3DataRepositoryConfiguration& value) { m_s3HasBeenSet = true; m_s3 = value; } /** *The configuration for an Amazon S3 data repository linked to an Amazon FSx * for Lustre file system with a data repository association.
*/ inline void SetS3(S3DataRepositoryConfiguration&& value) { m_s3HasBeenSet = true; m_s3 = std::move(value); } /** *The configuration for an Amazon S3 data repository linked to an Amazon FSx * for Lustre file system with a data repository association.
*/ inline DataRepositoryAssociation& WithS3(const S3DataRepositoryConfiguration& value) { SetS3(value); return *this;} /** *The configuration for an Amazon S3 data repository linked to an Amazon FSx * for Lustre file system with a data repository association.
*/ inline DataRepositoryAssociation& WithS3(S3DataRepositoryConfiguration&& value) { SetS3(std::move(value)); return *this;} inline const Aws::VectorThe globally unique ID of the Amazon File Cache resource.
*/ inline const Aws::String& GetFileCacheId() const{ return m_fileCacheId; } /** *The globally unique ID of the Amazon File Cache resource.
*/ inline bool FileCacheIdHasBeenSet() const { return m_fileCacheIdHasBeenSet; } /** *The globally unique ID of the Amazon File Cache resource.
*/ inline void SetFileCacheId(const Aws::String& value) { m_fileCacheIdHasBeenSet = true; m_fileCacheId = value; } /** *The globally unique ID of the Amazon File Cache resource.
*/ inline void SetFileCacheId(Aws::String&& value) { m_fileCacheIdHasBeenSet = true; m_fileCacheId = std::move(value); } /** *The globally unique ID of the Amazon File Cache resource.
*/ inline void SetFileCacheId(const char* value) { m_fileCacheIdHasBeenSet = true; m_fileCacheId.assign(value); } /** *The globally unique ID of the Amazon File Cache resource.
*/ inline DataRepositoryAssociation& WithFileCacheId(const Aws::String& value) { SetFileCacheId(value); return *this;} /** *The globally unique ID of the Amazon File Cache resource.
*/ inline DataRepositoryAssociation& WithFileCacheId(Aws::String&& value) { SetFileCacheId(std::move(value)); return *this;} /** *The globally unique ID of the Amazon File Cache resource.
*/ inline DataRepositoryAssociation& WithFileCacheId(const char* value) { SetFileCacheId(value); return *this;} /** *A path on the Amazon File Cache that points to a high-level directory (such
* as /ns1/
) or subdirectory (such as /ns1/subdir/
) that
* will be mapped 1-1 with DataRepositoryPath
. The leading forward
* slash in the path is required. Two data repository associations cannot have
* overlapping cache paths. For example, if a data repository is associated with
* cache path /ns1/
, then you cannot link another data repository with
* cache path /ns1/ns2
.
This path specifies the directory in * your cache where files will be exported from. This cache directory can be linked * to only one data repository (S3 or NFS) and no other data repository can be * linked to the directory.
The cache path can only be set to root
* (/) on an NFS DRA when DataRepositorySubdirectories
is specified.
* If you specify root (/) as the cache path, you can create only one DRA on the
* cache.
The cache path cannot be set to root (/) for an S3 DRA.
* */ inline const Aws::String& GetFileCachePath() const{ return m_fileCachePath; } /** *A path on the Amazon File Cache that points to a high-level directory (such
* as /ns1/
) or subdirectory (such as /ns1/subdir/
) that
* will be mapped 1-1 with DataRepositoryPath
. The leading forward
* slash in the path is required. Two data repository associations cannot have
* overlapping cache paths. For example, if a data repository is associated with
* cache path /ns1/
, then you cannot link another data repository with
* cache path /ns1/ns2
.
This path specifies the directory in * your cache where files will be exported from. This cache directory can be linked * to only one data repository (S3 or NFS) and no other data repository can be * linked to the directory.
The cache path can only be set to root
* (/) on an NFS DRA when DataRepositorySubdirectories
is specified.
* If you specify root (/) as the cache path, you can create only one DRA on the
* cache.
The cache path cannot be set to root (/) for an S3 DRA.
* */ inline bool FileCachePathHasBeenSet() const { return m_fileCachePathHasBeenSet; } /** *A path on the Amazon File Cache that points to a high-level directory (such
* as /ns1/
) or subdirectory (such as /ns1/subdir/
) that
* will be mapped 1-1 with DataRepositoryPath
. The leading forward
* slash in the path is required. Two data repository associations cannot have
* overlapping cache paths. For example, if a data repository is associated with
* cache path /ns1/
, then you cannot link another data repository with
* cache path /ns1/ns2
.
This path specifies the directory in * your cache where files will be exported from. This cache directory can be linked * to only one data repository (S3 or NFS) and no other data repository can be * linked to the directory.
The cache path can only be set to root
* (/) on an NFS DRA when DataRepositorySubdirectories
is specified.
* If you specify root (/) as the cache path, you can create only one DRA on the
* cache.
The cache path cannot be set to root (/) for an S3 DRA.
* */ inline void SetFileCachePath(const Aws::String& value) { m_fileCachePathHasBeenSet = true; m_fileCachePath = value; } /** *A path on the Amazon File Cache that points to a high-level directory (such
* as /ns1/
) or subdirectory (such as /ns1/subdir/
) that
* will be mapped 1-1 with DataRepositoryPath
. The leading forward
* slash in the path is required. Two data repository associations cannot have
* overlapping cache paths. For example, if a data repository is associated with
* cache path /ns1/
, then you cannot link another data repository with
* cache path /ns1/ns2
.
This path specifies the directory in * your cache where files will be exported from. This cache directory can be linked * to only one data repository (S3 or NFS) and no other data repository can be * linked to the directory.
The cache path can only be set to root
* (/) on an NFS DRA when DataRepositorySubdirectories
is specified.
* If you specify root (/) as the cache path, you can create only one DRA on the
* cache.
The cache path cannot be set to root (/) for an S3 DRA.
* */ inline void SetFileCachePath(Aws::String&& value) { m_fileCachePathHasBeenSet = true; m_fileCachePath = std::move(value); } /** *A path on the Amazon File Cache that points to a high-level directory (such
* as /ns1/
) or subdirectory (such as /ns1/subdir/
) that
* will be mapped 1-1 with DataRepositoryPath
. The leading forward
* slash in the path is required. Two data repository associations cannot have
* overlapping cache paths. For example, if a data repository is associated with
* cache path /ns1/
, then you cannot link another data repository with
* cache path /ns1/ns2
.
This path specifies the directory in * your cache where files will be exported from. This cache directory can be linked * to only one data repository (S3 or NFS) and no other data repository can be * linked to the directory.
The cache path can only be set to root
* (/) on an NFS DRA when DataRepositorySubdirectories
is specified.
* If you specify root (/) as the cache path, you can create only one DRA on the
* cache.
The cache path cannot be set to root (/) for an S3 DRA.
* */ inline void SetFileCachePath(const char* value) { m_fileCachePathHasBeenSet = true; m_fileCachePath.assign(value); } /** *A path on the Amazon File Cache that points to a high-level directory (such
* as /ns1/
) or subdirectory (such as /ns1/subdir/
) that
* will be mapped 1-1 with DataRepositoryPath
. The leading forward
* slash in the path is required. Two data repository associations cannot have
* overlapping cache paths. For example, if a data repository is associated with
* cache path /ns1/
, then you cannot link another data repository with
* cache path /ns1/ns2
.
This path specifies the directory in * your cache where files will be exported from. This cache directory can be linked * to only one data repository (S3 or NFS) and no other data repository can be * linked to the directory.
The cache path can only be set to root
* (/) on an NFS DRA when DataRepositorySubdirectories
is specified.
* If you specify root (/) as the cache path, you can create only one DRA on the
* cache.
The cache path cannot be set to root (/) for an S3 DRA.
* */ inline DataRepositoryAssociation& WithFileCachePath(const Aws::String& value) { SetFileCachePath(value); return *this;} /** *A path on the Amazon File Cache that points to a high-level directory (such
* as /ns1/
) or subdirectory (such as /ns1/subdir/
) that
* will be mapped 1-1 with DataRepositoryPath
. The leading forward
* slash in the path is required. Two data repository associations cannot have
* overlapping cache paths. For example, if a data repository is associated with
* cache path /ns1/
, then you cannot link another data repository with
* cache path /ns1/ns2
.
This path specifies the directory in * your cache where files will be exported from. This cache directory can be linked * to only one data repository (S3 or NFS) and no other data repository can be * linked to the directory.
The cache path can only be set to root
* (/) on an NFS DRA when DataRepositorySubdirectories
is specified.
* If you specify root (/) as the cache path, you can create only one DRA on the
* cache.
The cache path cannot be set to root (/) for an S3 DRA.
* */ inline DataRepositoryAssociation& WithFileCachePath(Aws::String&& value) { SetFileCachePath(std::move(value)); return *this;} /** *A path on the Amazon File Cache that points to a high-level directory (such
* as /ns1/
) or subdirectory (such as /ns1/subdir/
) that
* will be mapped 1-1 with DataRepositoryPath
. The leading forward
* slash in the path is required. Two data repository associations cannot have
* overlapping cache paths. For example, if a data repository is associated with
* cache path /ns1/
, then you cannot link another data repository with
* cache path /ns1/ns2
.
This path specifies the directory in * your cache where files will be exported from. This cache directory can be linked * to only one data repository (S3 or NFS) and no other data repository can be * linked to the directory.
The cache path can only be set to root
* (/) on an NFS DRA when DataRepositorySubdirectories
is specified.
* If you specify root (/) as the cache path, you can create only one DRA on the
* cache.
The cache path cannot be set to root (/) for an S3 DRA.
* */ inline DataRepositoryAssociation& WithFileCachePath(const char* value) { SetFileCachePath(value); return *this;} /** *For Amazon File Cache, a list of NFS Exports that will be linked with an NFS
* data repository association. All the subdirectories must be on a single NFS file
* system. The Export paths are in the format /exportpath1
. To use
* this parameter, you must configure DataRepositoryPath
as the domain
* name of the NFS file system. The NFS file system domain name in effect is the
* root of the subdirectories. Note that DataRepositorySubdirectories
* is not supported for S3 data repositories.
For Amazon File Cache, a list of NFS Exports that will be linked with an NFS
* data repository association. All the subdirectories must be on a single NFS file
* system. The Export paths are in the format /exportpath1
. To use
* this parameter, you must configure DataRepositoryPath
as the domain
* name of the NFS file system. The NFS file system domain name in effect is the
* root of the subdirectories. Note that DataRepositorySubdirectories
* is not supported for S3 data repositories.
For Amazon File Cache, a list of NFS Exports that will be linked with an NFS
* data repository association. All the subdirectories must be on a single NFS file
* system. The Export paths are in the format /exportpath1
. To use
* this parameter, you must configure DataRepositoryPath
as the domain
* name of the NFS file system. The NFS file system domain name in effect is the
* root of the subdirectories. Note that DataRepositorySubdirectories
* is not supported for S3 data repositories.
For Amazon File Cache, a list of NFS Exports that will be linked with an NFS
* data repository association. All the subdirectories must be on a single NFS file
* system. The Export paths are in the format /exportpath1
. To use
* this parameter, you must configure DataRepositoryPath
as the domain
* name of the NFS file system. The NFS file system domain name in effect is the
* root of the subdirectories. Note that DataRepositorySubdirectories
* is not supported for S3 data repositories.
For Amazon File Cache, a list of NFS Exports that will be linked with an NFS
* data repository association. All the subdirectories must be on a single NFS file
* system. The Export paths are in the format /exportpath1
. To use
* this parameter, you must configure DataRepositoryPath
as the domain
* name of the NFS file system. The NFS file system domain name in effect is the
* root of the subdirectories. Note that DataRepositorySubdirectories
* is not supported for S3 data repositories.
For Amazon File Cache, a list of NFS Exports that will be linked with an NFS
* data repository association. All the subdirectories must be on a single NFS file
* system. The Export paths are in the format /exportpath1
. To use
* this parameter, you must configure DataRepositoryPath
as the domain
* name of the NFS file system. The NFS file system domain name in effect is the
* root of the subdirectories. Note that DataRepositorySubdirectories
* is not supported for S3 data repositories.
For Amazon File Cache, a list of NFS Exports that will be linked with an NFS
* data repository association. All the subdirectories must be on a single NFS file
* system. The Export paths are in the format /exportpath1
. To use
* this parameter, you must configure DataRepositoryPath
as the domain
* name of the NFS file system. The NFS file system domain name in effect is the
* root of the subdirectories. Note that DataRepositorySubdirectories
* is not supported for S3 data repositories.
For Amazon File Cache, a list of NFS Exports that will be linked with an NFS
* data repository association. All the subdirectories must be on a single NFS file
* system. The Export paths are in the format /exportpath1
. To use
* this parameter, you must configure DataRepositoryPath
as the domain
* name of the NFS file system. The NFS file system domain name in effect is the
* root of the subdirectories. Note that DataRepositorySubdirectories
* is not supported for S3 data repositories.
For Amazon File Cache, a list of NFS Exports that will be linked with an NFS
* data repository association. All the subdirectories must be on a single NFS file
* system. The Export paths are in the format /exportpath1
. To use
* this parameter, you must configure DataRepositoryPath
as the domain
* name of the NFS file system. The NFS file system domain name in effect is the
* root of the subdirectories. Note that DataRepositorySubdirectories
* is not supported for S3 data repositories.
The configuration for an NFS data repository linked to an Amazon File Cache * resource with a data repository association.
*/ inline const NFSDataRepositoryConfiguration& GetNFS() const{ return m_nFS; } /** *The configuration for an NFS data repository linked to an Amazon File Cache * resource with a data repository association.
*/ inline bool NFSHasBeenSet() const { return m_nFSHasBeenSet; } /** *The configuration for an NFS data repository linked to an Amazon File Cache * resource with a data repository association.
*/ inline void SetNFS(const NFSDataRepositoryConfiguration& value) { m_nFSHasBeenSet = true; m_nFS = value; } /** *The configuration for an NFS data repository linked to an Amazon File Cache * resource with a data repository association.
*/ inline void SetNFS(NFSDataRepositoryConfiguration&& value) { m_nFSHasBeenSet = true; m_nFS = std::move(value); } /** *The configuration for an NFS data repository linked to an Amazon File Cache * resource with a data repository association.
*/ inline DataRepositoryAssociation& WithNFS(const NFSDataRepositoryConfiguration& value) { SetNFS(value); return *this;} /** *The configuration for an NFS data repository linked to an Amazon File Cache * resource with a data repository association.
*/ inline DataRepositoryAssociation& WithNFS(NFSDataRepositoryConfiguration&& value) { SetNFS(std::move(value)); return *this;} private: Aws::String m_associationId; bool m_associationIdHasBeenSet = false; Aws::String m_resourceARN; bool m_resourceARNHasBeenSet = false; Aws::String m_fileSystemId; bool m_fileSystemIdHasBeenSet = false; DataRepositoryLifecycle m_lifecycle; bool m_lifecycleHasBeenSet = false; DataRepositoryFailureDetails m_failureDetails; bool m_failureDetailsHasBeenSet = false; Aws::String m_fileSystemPath; bool m_fileSystemPathHasBeenSet = false; Aws::String m_dataRepositoryPath; bool m_dataRepositoryPathHasBeenSet = false; bool m_batchImportMetaDataOnCreate; bool m_batchImportMetaDataOnCreateHasBeenSet = false; int m_importedFileChunkSize; bool m_importedFileChunkSizeHasBeenSet = false; S3DataRepositoryConfiguration m_s3; bool m_s3HasBeenSet = false; Aws::Vector