All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.fsx.model.DataRepositoryAssociation Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon FSx module holds the client classes that are used for communicating with Amazon FSx Service

There is a newer version: 1.12.780
Show newest version
/*
 * Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package com.amazonaws.services.fsx.model;

import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;

/**
 * 

* 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: *

*
    *
  • *

    * CreateDataRepositoryAssociation *

    *
  • *
  • *

    * UpdateDataRepositoryAssociation *

    *
  • *
  • *

    * DescribeDataRepositoryAssociations *

    *
  • *
*

* Data repository associations are supported on Amazon File Cache resources and all FSx for Lustre 2.12 and 2.15 file * systems, excluding scratch_1 deployment type. *

* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class DataRepositoryAssociation implements Serializable, Cloneable, StructuredPojo { /** *

* The system-generated, unique ID of the data repository association. *

*/ private String associationId; private String resourceARN; private String fileSystemId; /** *

* 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. *

    *
  • *
*/ private String lifecycle; private DataRepositoryFailureDetails failureDetails; /** *

* 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. *

*
*/ private String fileSystemPath; /** *

* 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/. *

    *
  • *
*/ private String dataRepositoryPath; /** *

* 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. *

*
*/ private Boolean batchImportMetaDataOnCreate; /** *

* 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. *

*/ private Integer importedFileChunkSize; /** *

* The configuration for an Amazon S3 data repository linked to an Amazon FSx for Lustre file system with a data * repository association. *

*/ private S3DataRepositoryConfiguration s3; private java.util.List tags; private java.util.Date creationTime; /** *

* The globally unique ID of the Amazon File Cache resource. *

*/ private String fileCacheId; /** *

* 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. *

*
*/ private String fileCachePath; /** *

* 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. *

*/ private java.util.List dataRepositorySubdirectories; /** *

* The configuration for an NFS data repository linked to an Amazon File Cache resource with a data repository * association. *

*/ private NFSDataRepositoryConfiguration nFS; /** *

* The system-generated, unique ID of the data repository association. *

* * @param associationId * The system-generated, unique ID of the data repository association. */ public void setAssociationId(String associationId) { this.associationId = associationId; } /** *

* The system-generated, unique ID of the data repository association. *

* * @return The system-generated, unique ID of the data repository association. */ public String getAssociationId() { return this.associationId; } /** *

* The system-generated, unique ID of the data repository association. *

* * @param associationId * The system-generated, unique ID of the data repository association. * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withAssociationId(String associationId) { setAssociationId(associationId); return this; } /** * @param resourceARN */ public void setResourceARN(String resourceARN) { this.resourceARN = resourceARN; } /** * @return */ public String getResourceARN() { return this.resourceARN; } /** * @param resourceARN * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withResourceARN(String resourceARN) { setResourceARN(resourceARN); return this; } /** * @param fileSystemId */ public void setFileSystemId(String fileSystemId) { this.fileSystemId = fileSystemId; } /** * @return */ public String getFileSystemId() { return this.fileSystemId; } /** * @param fileSystemId * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withFileSystemId(String fileSystemId) { setFileSystemId(fileSystemId); 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. *

    *
  • *
* * @param lifecycle * 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. *

    *
  • * @see DataRepositoryLifecycle */ public void setLifecycle(String lifecycle) { this.lifecycle = lifecycle; } /** *

    * 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. *

      *
    • *
    * * @return 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. *

      *
    • * @see DataRepositoryLifecycle */ public String getLifecycle() { return this.lifecycle; } /** *

      * 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. *

        *
      • *
      * * @param lifecycle * 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. *

        *
      • * @return Returns a reference to this object so that method calls can be chained together. * @see DataRepositoryLifecycle */ public DataRepositoryAssociation withLifecycle(String lifecycle) { setLifecycle(lifecycle); 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. *

          *
        • *
        * * @param lifecycle * 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. *

          *
        • * @return Returns a reference to this object so that method calls can be chained together. * @see DataRepositoryLifecycle */ public DataRepositoryAssociation withLifecycle(DataRepositoryLifecycle lifecycle) { this.lifecycle = lifecycle.toString(); return this; } /** * @param failureDetails */ public void setFailureDetails(DataRepositoryFailureDetails failureDetails) { this.failureDetails = failureDetails; } /** * @return */ public DataRepositoryFailureDetails getFailureDetails() { return this.failureDetails; } /** * @param failureDetails * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withFailureDetails(DataRepositoryFailureDetails failureDetails) { setFailureDetails(failureDetails); return this; } /** *

          * 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. *

          *
          * * @param fileSystemPath * 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. *

          */ public void setFileSystemPath(String fileSystemPath) { this.fileSystemPath = fileSystemPath; } /** *

          * 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. *

          *
          * * @return 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. *

          */ public String getFileSystemPath() { return this.fileSystemPath; } /** *

          * 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. *

          *
          * * @param fileSystemPath * 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. *

          * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withFileSystemPath(String fileSystemPath) { setFileSystemPath(fileSystemPath); return this; } /** *

          * 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/. *

            *
          • *
          * * @param dataRepositoryPath * 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/. *

            *
          • */ public void setDataRepositoryPath(String dataRepositoryPath) { this.dataRepositoryPath = dataRepositoryPath; } /** *

            * 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/. *

              *
            • *
            * * @return 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/. *

              *
            • */ public String getDataRepositoryPath() { return this.dataRepositoryPath; } /** *

              * 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/. *

                *
              • *
              * * @param dataRepositoryPath * 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/. *

                *
              • * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withDataRepositoryPath(String dataRepositoryPath) { setDataRepositoryPath(dataRepositoryPath); return this; } /** *

                * 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. *

                *
                * * @param batchImportMetaDataOnCreate * 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. *

                */ public void setBatchImportMetaDataOnCreate(Boolean batchImportMetaDataOnCreate) { this.batchImportMetaDataOnCreate = batchImportMetaDataOnCreate; } /** *

                * 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. *

                *
                * * @return 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. *

                */ public Boolean getBatchImportMetaDataOnCreate() { return this.batchImportMetaDataOnCreate; } /** *

                * 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. *

                *
                * * @param batchImportMetaDataOnCreate * 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. *

                * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withBatchImportMetaDataOnCreate(Boolean batchImportMetaDataOnCreate) { setBatchImportMetaDataOnCreate(batchImportMetaDataOnCreate); return this; } /** *

                * 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. *

                *
                * * @return 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. *

                */ public Boolean isBatchImportMetaDataOnCreate() { return this.batchImportMetaDataOnCreate; } /** *

                * 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. *

                * * @param 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. */ public void setImportedFileChunkSize(Integer importedFileChunkSize) { this.importedFileChunkSize = 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. *

                * * @return 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. */ public Integer getImportedFileChunkSize() { return this.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. *

                * * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withImportedFileChunkSize(Integer importedFileChunkSize) { setImportedFileChunkSize(importedFileChunkSize); return this; } /** *

                * The configuration for an Amazon S3 data repository linked to an Amazon FSx for Lustre file system with a data * repository association. *

                * * @param s3 * The configuration for an Amazon S3 data repository linked to an Amazon FSx for Lustre file system with a * data repository association. */ public void setS3(S3DataRepositoryConfiguration s3) { this.s3 = s3; } /** *

                * The configuration for an Amazon S3 data repository linked to an Amazon FSx for Lustre file system with a data * repository association. *

                * * @return The configuration for an Amazon S3 data repository linked to an Amazon FSx for Lustre file system with a * data repository association. */ public S3DataRepositoryConfiguration getS3() { return this.s3; } /** *

                * The configuration for an Amazon S3 data repository linked to an Amazon FSx for Lustre file system with a data * repository association. *

                * * @param s3 * The configuration for an Amazon S3 data repository linked to an Amazon FSx for Lustre file system with a * data repository association. * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withS3(S3DataRepositoryConfiguration s3) { setS3(s3); return this; } /** * @return */ public java.util.List getTags() { return tags; } /** * @param tags */ public void setTags(java.util.Collection tags) { if (tags == null) { this.tags = null; return; } this.tags = new java.util.ArrayList(tags); } /** *

                * NOTE: This method appends the values to the existing list (if any). Use * {@link #setTags(java.util.Collection)} or {@link #withTags(java.util.Collection)} if you want to override the * existing values. *

                * * @param tags * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withTags(Tag... tags) { if (this.tags == null) { setTags(new java.util.ArrayList(tags.length)); } for (Tag ele : tags) { this.tags.add(ele); } return this; } /** * @param tags * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withTags(java.util.Collection tags) { setTags(tags); return this; } /** * @param creationTime */ public void setCreationTime(java.util.Date creationTime) { this.creationTime = creationTime; } /** * @return */ public java.util.Date getCreationTime() { return this.creationTime; } /** * @param creationTime * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withCreationTime(java.util.Date creationTime) { setCreationTime(creationTime); return this; } /** *

                * The globally unique ID of the Amazon File Cache resource. *

                * * @param fileCacheId * The globally unique ID of the Amazon File Cache resource. */ public void setFileCacheId(String fileCacheId) { this.fileCacheId = fileCacheId; } /** *

                * The globally unique ID of the Amazon File Cache resource. *

                * * @return The globally unique ID of the Amazon File Cache resource. */ public String getFileCacheId() { return this.fileCacheId; } /** *

                * The globally unique ID of the Amazon File Cache resource. *

                * * @param fileCacheId * The globally unique ID of the Amazon File Cache resource. * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withFileCacheId(String fileCacheId) { setFileCacheId(fileCacheId); 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. *

                *
                * * @param 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. *

                */ public void setFileCachePath(String fileCachePath) { this.fileCachePath = 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. *

                *
                * * @return 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. *

                */ public String getFileCachePath() { return this.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. *

                *
                * * @param 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. *

                * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withFileCachePath(String fileCachePath) { setFileCachePath(fileCachePath); 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. *

                * * @return 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. */ public java.util.List getDataRepositorySubdirectories() { return dataRepositorySubdirectories; } /** *

                * 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. *

                * * @param dataRepositorySubdirectories * 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. */ public void setDataRepositorySubdirectories(java.util.Collection dataRepositorySubdirectories) { if (dataRepositorySubdirectories == null) { this.dataRepositorySubdirectories = null; return; } this.dataRepositorySubdirectories = new java.util.ArrayList(dataRepositorySubdirectories); } /** *

                * 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. *

                *

                * NOTE: This method appends the values to the existing list (if any). Use * {@link #setDataRepositorySubdirectories(java.util.Collection)} or * {@link #withDataRepositorySubdirectories(java.util.Collection)} if you want to override the existing values. *

                * * @param dataRepositorySubdirectories * 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. * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withDataRepositorySubdirectories(String... dataRepositorySubdirectories) { if (this.dataRepositorySubdirectories == null) { setDataRepositorySubdirectories(new java.util.ArrayList(dataRepositorySubdirectories.length)); } for (String ele : dataRepositorySubdirectories) { this.dataRepositorySubdirectories.add(ele); } 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. *

                * * @param dataRepositorySubdirectories * 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. * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withDataRepositorySubdirectories(java.util.Collection dataRepositorySubdirectories) { setDataRepositorySubdirectories(dataRepositorySubdirectories); return this; } /** *

                * The configuration for an NFS data repository linked to an Amazon File Cache resource with a data repository * association. *

                * * @param nFS * The configuration for an NFS data repository linked to an Amazon File Cache resource with a data * repository association. */ public void setNFS(NFSDataRepositoryConfiguration nFS) { this.nFS = nFS; } /** *

                * The configuration for an NFS data repository linked to an Amazon File Cache resource with a data repository * association. *

                * * @return The configuration for an NFS data repository linked to an Amazon File Cache resource with a data * repository association. */ public NFSDataRepositoryConfiguration getNFS() { return this.nFS; } /** *

                * The configuration for an NFS data repository linked to an Amazon File Cache resource with a data repository * association. *

                * * @param nFS * The configuration for an NFS data repository linked to an Amazon File Cache resource with a data * repository association. * @return Returns a reference to this object so that method calls can be chained together. */ public DataRepositoryAssociation withNFS(NFSDataRepositoryConfiguration nFS) { setNFS(nFS); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getAssociationId() != null) sb.append("AssociationId: ").append(getAssociationId()).append(","); if (getResourceARN() != null) sb.append("ResourceARN: ").append(getResourceARN()).append(","); if (getFileSystemId() != null) sb.append("FileSystemId: ").append(getFileSystemId()).append(","); if (getLifecycle() != null) sb.append("Lifecycle: ").append(getLifecycle()).append(","); if (getFailureDetails() != null) sb.append("FailureDetails: ").append(getFailureDetails()).append(","); if (getFileSystemPath() != null) sb.append("FileSystemPath: ").append(getFileSystemPath()).append(","); if (getDataRepositoryPath() != null) sb.append("DataRepositoryPath: ").append(getDataRepositoryPath()).append(","); if (getBatchImportMetaDataOnCreate() != null) sb.append("BatchImportMetaDataOnCreate: ").append(getBatchImportMetaDataOnCreate()).append(","); if (getImportedFileChunkSize() != null) sb.append("ImportedFileChunkSize: ").append(getImportedFileChunkSize()).append(","); if (getS3() != null) sb.append("S3: ").append(getS3()).append(","); if (getTags() != null) sb.append("Tags: ").append(getTags()).append(","); if (getCreationTime() != null) sb.append("CreationTime: ").append(getCreationTime()).append(","); if (getFileCacheId() != null) sb.append("FileCacheId: ").append(getFileCacheId()).append(","); if (getFileCachePath() != null) sb.append("FileCachePath: ").append(getFileCachePath()).append(","); if (getDataRepositorySubdirectories() != null) sb.append("DataRepositorySubdirectories: ").append(getDataRepositorySubdirectories()).append(","); if (getNFS() != null) sb.append("NFS: ").append(getNFS()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof DataRepositoryAssociation == false) return false; DataRepositoryAssociation other = (DataRepositoryAssociation) obj; if (other.getAssociationId() == null ^ this.getAssociationId() == null) return false; if (other.getAssociationId() != null && other.getAssociationId().equals(this.getAssociationId()) == false) return false; if (other.getResourceARN() == null ^ this.getResourceARN() == null) return false; if (other.getResourceARN() != null && other.getResourceARN().equals(this.getResourceARN()) == false) return false; if (other.getFileSystemId() == null ^ this.getFileSystemId() == null) return false; if (other.getFileSystemId() != null && other.getFileSystemId().equals(this.getFileSystemId()) == false) return false; if (other.getLifecycle() == null ^ this.getLifecycle() == null) return false; if (other.getLifecycle() != null && other.getLifecycle().equals(this.getLifecycle()) == false) return false; if (other.getFailureDetails() == null ^ this.getFailureDetails() == null) return false; if (other.getFailureDetails() != null && other.getFailureDetails().equals(this.getFailureDetails()) == false) return false; if (other.getFileSystemPath() == null ^ this.getFileSystemPath() == null) return false; if (other.getFileSystemPath() != null && other.getFileSystemPath().equals(this.getFileSystemPath()) == false) return false; if (other.getDataRepositoryPath() == null ^ this.getDataRepositoryPath() == null) return false; if (other.getDataRepositoryPath() != null && other.getDataRepositoryPath().equals(this.getDataRepositoryPath()) == false) return false; if (other.getBatchImportMetaDataOnCreate() == null ^ this.getBatchImportMetaDataOnCreate() == null) return false; if (other.getBatchImportMetaDataOnCreate() != null && other.getBatchImportMetaDataOnCreate().equals(this.getBatchImportMetaDataOnCreate()) == false) return false; if (other.getImportedFileChunkSize() == null ^ this.getImportedFileChunkSize() == null) return false; if (other.getImportedFileChunkSize() != null && other.getImportedFileChunkSize().equals(this.getImportedFileChunkSize()) == false) return false; if (other.getS3() == null ^ this.getS3() == null) return false; if (other.getS3() != null && other.getS3().equals(this.getS3()) == false) return false; if (other.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == false) return false; if (other.getCreationTime() == null ^ this.getCreationTime() == null) return false; if (other.getCreationTime() != null && other.getCreationTime().equals(this.getCreationTime()) == false) return false; if (other.getFileCacheId() == null ^ this.getFileCacheId() == null) return false; if (other.getFileCacheId() != null && other.getFileCacheId().equals(this.getFileCacheId()) == false) return false; if (other.getFileCachePath() == null ^ this.getFileCachePath() == null) return false; if (other.getFileCachePath() != null && other.getFileCachePath().equals(this.getFileCachePath()) == false) return false; if (other.getDataRepositorySubdirectories() == null ^ this.getDataRepositorySubdirectories() == null) return false; if (other.getDataRepositorySubdirectories() != null && other.getDataRepositorySubdirectories().equals(this.getDataRepositorySubdirectories()) == false) return false; if (other.getNFS() == null ^ this.getNFS() == null) return false; if (other.getNFS() != null && other.getNFS().equals(this.getNFS()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getAssociationId() == null) ? 0 : getAssociationId().hashCode()); hashCode = prime * hashCode + ((getResourceARN() == null) ? 0 : getResourceARN().hashCode()); hashCode = prime * hashCode + ((getFileSystemId() == null) ? 0 : getFileSystemId().hashCode()); hashCode = prime * hashCode + ((getLifecycle() == null) ? 0 : getLifecycle().hashCode()); hashCode = prime * hashCode + ((getFailureDetails() == null) ? 0 : getFailureDetails().hashCode()); hashCode = prime * hashCode + ((getFileSystemPath() == null) ? 0 : getFileSystemPath().hashCode()); hashCode = prime * hashCode + ((getDataRepositoryPath() == null) ? 0 : getDataRepositoryPath().hashCode()); hashCode = prime * hashCode + ((getBatchImportMetaDataOnCreate() == null) ? 0 : getBatchImportMetaDataOnCreate().hashCode()); hashCode = prime * hashCode + ((getImportedFileChunkSize() == null) ? 0 : getImportedFileChunkSize().hashCode()); hashCode = prime * hashCode + ((getS3() == null) ? 0 : getS3().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); hashCode = prime * hashCode + ((getCreationTime() == null) ? 0 : getCreationTime().hashCode()); hashCode = prime * hashCode + ((getFileCacheId() == null) ? 0 : getFileCacheId().hashCode()); hashCode = prime * hashCode + ((getFileCachePath() == null) ? 0 : getFileCachePath().hashCode()); hashCode = prime * hashCode + ((getDataRepositorySubdirectories() == null) ? 0 : getDataRepositorySubdirectories().hashCode()); hashCode = prime * hashCode + ((getNFS() == null) ? 0 : getNFS().hashCode()); return hashCode; } @Override public DataRepositoryAssociation clone() { try { return (DataRepositoryAssociation) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } @com.amazonaws.annotation.SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { com.amazonaws.services.fsx.model.transform.DataRepositoryAssociationMarshaller.getInstance().marshall(this, protocolMarshaller); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy