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

com.amazonaws.services.fsx.model.CreateFileSystemRequest 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

The 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.AmazonWebServiceRequest;

/**
 * 

* The request object used to create a new Amazon FSx file system. *

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

* A string of up to 63 ASCII characters that Amazon FSx uses to ensure idempotent creation. This string is * automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. *

*/ private String clientRequestToken; /** *

* The type of Amazon FSx file system to create. Valid values are WINDOWS, LUSTRE, * ONTAP, and OPENZFS. *

*/ private String fileSystemType; /** *

* Sets the storage capacity of the file system that you're creating, in gibibytes (GiB). *

*

* FSx for Lustre file systems - The amount of storage capacity that you can configure depends on the value * that you set for StorageType and the Lustre DeploymentType, as follows: *

*
    *
  • *

    * For SCRATCH_2, PERSISTENT_2, and PERSISTENT_1 deployment types using SSD * storage type, the valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB. *

    *
  • *
  • *

    * For PERSISTENT_1 HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB file * systems and increments of 1800 GiB for 40 MB/s/TiB file systems. *

    *
  • *
  • *

    * For SCRATCH_1 deployment type, valid values are 1200 GiB, 2400 GiB, and increments of 3600 GiB. *

    *
  • *
*

* FSx for ONTAP file systems - The amount of storage capacity that you can configure depends on the value of * the HAPairs property. The minimum value is calculated as 1,024 * HAPairs and the * maximum is calculated as 524,288 * HAPairs. *

*

* FSx for OpenZFS file systems - The amount of storage capacity that you can configure is from 64 GiB up to * 524,288 GiB (512 TiB). *

*

* FSx for Windows File Server file systems - The amount of storage capacity that you can configure depends * on the value that you set for StorageType as follows: *

*
    *
  • *

    * For SSD storage, valid values are 32 GiB-65,536 GiB (64 TiB). *

    *
  • *
  • *

    * For HDD storage, valid values are 2000 GiB-65,536 GiB (64 TiB). *

    *
  • *
*/ private Integer storageCapacity; /** *

* Sets the storage type for the file system that you're creating. Valid values are SSD and * HDD. *

*
    *
  • *

    * Set to SSD to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, and * OpenZFS deployment types. *

    *
  • *
  • *

    * Set to HDD to use hard disk drive storage. HDD is supported on SINGLE_AZ_2 and * MULTI_AZ_1 Windows file system deployment types, and on PERSISTENT_1 Lustre file system * deployment types. *

    *
  • *
*

* Default value is SSD. For more information, see Storage * type options in the FSx for Windows File Server User Guide and Multiple storage * options in the FSx for Lustre User Guide. *

*/ private String storageType; /** *

* Specifies the IDs of the subnets that the file system will be accessible from. For Windows and ONTAP * MULTI_AZ_1 deployment types,provide exactly two subnet IDs, one for the preferred file server and * one for the standby file server. You specify one of these subnets as the preferred subnet using the * WindowsConfiguration > PreferredSubnetID or * OntapConfiguration > PreferredSubnetID properties. For more information about Multi-AZ file * system configuration, see Availability and * durability: Single-AZ and Multi-AZ file systems in the Amazon FSx for Windows User Guide and Availability and * durability in the Amazon FSx for ONTAP User Guide. *

*

* For Windows SINGLE_AZ_1 and SINGLE_AZ_2 and all Lustre deployment types, provide * exactly one subnet ID. The file server is launched in that subnet's Availability Zone. *

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

* A list of IDs specifying the security groups to apply to all network interfaces created for file system access. * This list isn't returned in later requests to describe the file system. *

* *

* You must specify a security group if you are creating a Multi-AZ FSx for ONTAP file system in a VPC subnet that * has been shared with you. *

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

* The tags to apply to the file system that's being created. The key value of the Name tag appears in * the console as the file system name. *

*/ private java.util.List tags; private String kmsKeyId; /** *

* The Microsoft Windows configuration for the file system that's being created. *

*/ private CreateFileSystemWindowsConfiguration windowsConfiguration; private CreateFileSystemLustreConfiguration lustreConfiguration; private CreateFileSystemOntapConfiguration ontapConfiguration; /** *

* For FSx for Lustre file systems, sets the Lustre version for the file system that you're creating. Valid values * are 2.10, 2.12, and 2.15: *

*
    *
  • *

    * 2.10 is supported by the Scratch and Persistent_1 Lustre deployment types. *

    *
  • *
  • *

    * 2.12 is supported by all Lustre deployment types, except for PERSISTENT_2 with a * metadata configuration mode. *

    *
  • *
  • *

    * 2.15 is supported by all Lustre deployment types and is recommended for all new file systems. *

    *
  • *
*

* Default value is 2.10, except for the following deployments: *

*
    *
  • *

    * Default value is 2.12 when DeploymentType is set to PERSISTENT_2 without a * metadata configuration mode. *

    *
  • *
  • *

    * Default value is 2.15 when DeploymentType is set to PERSISTENT_2 with a * metadata configuration mode. *

    *
  • *
*/ private String fileSystemTypeVersion; /** *

* The OpenZFS configuration for the file system that's being created. *

*/ private CreateFileSystemOpenZFSConfiguration openZFSConfiguration; /** *

* A string of up to 63 ASCII characters that Amazon FSx uses to ensure idempotent creation. This string is * automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. *

* * @param clientRequestToken * A string of up to 63 ASCII characters that Amazon FSx uses to ensure idempotent creation. This string is * automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web * Services SDK. */ public void setClientRequestToken(String clientRequestToken) { this.clientRequestToken = clientRequestToken; } /** *

* A string of up to 63 ASCII characters that Amazon FSx uses to ensure idempotent creation. This string is * automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. *

* * @return A string of up to 63 ASCII characters that Amazon FSx uses to ensure idempotent creation. This string is * automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web * Services SDK. */ public String getClientRequestToken() { return this.clientRequestToken; } /** *

* A string of up to 63 ASCII characters that Amazon FSx uses to ensure idempotent creation. This string is * automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web Services SDK. *

* * @param clientRequestToken * A string of up to 63 ASCII characters that Amazon FSx uses to ensure idempotent creation. This string is * automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web * Services SDK. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateFileSystemRequest withClientRequestToken(String clientRequestToken) { setClientRequestToken(clientRequestToken); return this; } /** *

* The type of Amazon FSx file system to create. Valid values are WINDOWS, LUSTRE, * ONTAP, and OPENZFS. *

* * @param fileSystemType * The type of Amazon FSx file system to create. Valid values are WINDOWS, LUSTRE, * ONTAP, and OPENZFS. * @see FileSystemType */ public void setFileSystemType(String fileSystemType) { this.fileSystemType = fileSystemType; } /** *

* The type of Amazon FSx file system to create. Valid values are WINDOWS, LUSTRE, * ONTAP, and OPENZFS. *

* * @return The type of Amazon FSx file system to create. Valid values are WINDOWS, LUSTRE, * ONTAP, and OPENZFS. * @see FileSystemType */ public String getFileSystemType() { return this.fileSystemType; } /** *

* The type of Amazon FSx file system to create. Valid values are WINDOWS, LUSTRE, * ONTAP, and OPENZFS. *

* * @param fileSystemType * The type of Amazon FSx file system to create. Valid values are WINDOWS, LUSTRE, * ONTAP, and OPENZFS. * @return Returns a reference to this object so that method calls can be chained together. * @see FileSystemType */ public CreateFileSystemRequest withFileSystemType(String fileSystemType) { setFileSystemType(fileSystemType); return this; } /** *

* The type of Amazon FSx file system to create. Valid values are WINDOWS, LUSTRE, * ONTAP, and OPENZFS. *

* * @param fileSystemType * The type of Amazon FSx file system to create. Valid values are WINDOWS, LUSTRE, * ONTAP, and OPENZFS. * @return Returns a reference to this object so that method calls can be chained together. * @see FileSystemType */ public CreateFileSystemRequest withFileSystemType(FileSystemType fileSystemType) { this.fileSystemType = fileSystemType.toString(); return this; } /** *

* Sets the storage capacity of the file system that you're creating, in gibibytes (GiB). *

*

* FSx for Lustre file systems - The amount of storage capacity that you can configure depends on the value * that you set for StorageType and the Lustre DeploymentType, as follows: *

*
    *
  • *

    * For SCRATCH_2, PERSISTENT_2, and PERSISTENT_1 deployment types using SSD * storage type, the valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB. *

    *
  • *
  • *

    * For PERSISTENT_1 HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB file * systems and increments of 1800 GiB for 40 MB/s/TiB file systems. *

    *
  • *
  • *

    * For SCRATCH_1 deployment type, valid values are 1200 GiB, 2400 GiB, and increments of 3600 GiB. *

    *
  • *
*

* FSx for ONTAP file systems - The amount of storage capacity that you can configure depends on the value of * the HAPairs property. The minimum value is calculated as 1,024 * HAPairs and the * maximum is calculated as 524,288 * HAPairs. *

*

* FSx for OpenZFS file systems - The amount of storage capacity that you can configure is from 64 GiB up to * 524,288 GiB (512 TiB). *

*

* FSx for Windows File Server file systems - The amount of storage capacity that you can configure depends * on the value that you set for StorageType as follows: *

*
    *
  • *

    * For SSD storage, valid values are 32 GiB-65,536 GiB (64 TiB). *

    *
  • *
  • *

    * For HDD storage, valid values are 2000 GiB-65,536 GiB (64 TiB). *

    *
  • *
* * @param storageCapacity * Sets the storage capacity of the file system that you're creating, in gibibytes (GiB).

*

* FSx for Lustre file systems - The amount of storage capacity that you can configure depends on the * value that you set for StorageType and the Lustre DeploymentType, as follows: *

*
    *
  • *

    * For SCRATCH_2, PERSISTENT_2, and PERSISTENT_1 deployment types * using SSD storage type, the valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB. *

    *
  • *
  • *

    * For PERSISTENT_1 HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB * file systems and increments of 1800 GiB for 40 MB/s/TiB file systems. *

    *
  • *
  • *

    * For SCRATCH_1 deployment type, valid values are 1200 GiB, 2400 GiB, and increments of 3600 * GiB. *

    *
  • *
*

* FSx for ONTAP file systems - The amount of storage capacity that you can configure depends on the * value of the HAPairs property. The minimum value is calculated as 1,024 * * HAPairs and the maximum is calculated as 524,288 * HAPairs. *

*

* FSx for OpenZFS file systems - The amount of storage capacity that you can configure is from 64 GiB * up to 524,288 GiB (512 TiB). *

*

* FSx for Windows File Server file systems - The amount of storage capacity that you can configure * depends on the value that you set for StorageType as follows: *

*
    *
  • *

    * For SSD storage, valid values are 32 GiB-65,536 GiB (64 TiB). *

    *
  • *
  • *

    * For HDD storage, valid values are 2000 GiB-65,536 GiB (64 TiB). *

    *
  • */ public void setStorageCapacity(Integer storageCapacity) { this.storageCapacity = storageCapacity; } /** *

    * Sets the storage capacity of the file system that you're creating, in gibibytes (GiB). *

    *

    * FSx for Lustre file systems - The amount of storage capacity that you can configure depends on the value * that you set for StorageType and the Lustre DeploymentType, as follows: *

    *
      *
    • *

      * For SCRATCH_2, PERSISTENT_2, and PERSISTENT_1 deployment types using SSD * storage type, the valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB. *

      *
    • *
    • *

      * For PERSISTENT_1 HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB file * systems and increments of 1800 GiB for 40 MB/s/TiB file systems. *

      *
    • *
    • *

      * For SCRATCH_1 deployment type, valid values are 1200 GiB, 2400 GiB, and increments of 3600 GiB. *

      *
    • *
    *

    * FSx for ONTAP file systems - The amount of storage capacity that you can configure depends on the value of * the HAPairs property. The minimum value is calculated as 1,024 * HAPairs and the * maximum is calculated as 524,288 * HAPairs. *

    *

    * FSx for OpenZFS file systems - The amount of storage capacity that you can configure is from 64 GiB up to * 524,288 GiB (512 TiB). *

    *

    * FSx for Windows File Server file systems - The amount of storage capacity that you can configure depends * on the value that you set for StorageType as follows: *

    *
      *
    • *

      * For SSD storage, valid values are 32 GiB-65,536 GiB (64 TiB). *

      *
    • *
    • *

      * For HDD storage, valid values are 2000 GiB-65,536 GiB (64 TiB). *

      *
    • *
    * * @return Sets the storage capacity of the file system that you're creating, in gibibytes (GiB).

    *

    * FSx for Lustre file systems - The amount of storage capacity that you can configure depends on the * value that you set for StorageType and the Lustre DeploymentType, as follows: *

    *
      *
    • *

      * For SCRATCH_2, PERSISTENT_2, and PERSISTENT_1 deployment types * using SSD storage type, the valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB. *

      *
    • *
    • *

      * For PERSISTENT_1 HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB * file systems and increments of 1800 GiB for 40 MB/s/TiB file systems. *

      *
    • *
    • *

      * For SCRATCH_1 deployment type, valid values are 1200 GiB, 2400 GiB, and increments of 3600 * GiB. *

      *
    • *
    *

    * FSx for ONTAP file systems - The amount of storage capacity that you can configure depends on the * value of the HAPairs property. The minimum value is calculated as 1,024 * * HAPairs and the maximum is calculated as 524,288 * HAPairs. *

    *

    * FSx for OpenZFS file systems - The amount of storage capacity that you can configure is from 64 * GiB up to 524,288 GiB (512 TiB). *

    *

    * FSx for Windows File Server file systems - The amount of storage capacity that you can configure * depends on the value that you set for StorageType as follows: *

    *
      *
    • *

      * For SSD storage, valid values are 32 GiB-65,536 GiB (64 TiB). *

      *
    • *
    • *

      * For HDD storage, valid values are 2000 GiB-65,536 GiB (64 TiB). *

      *
    • */ public Integer getStorageCapacity() { return this.storageCapacity; } /** *

      * Sets the storage capacity of the file system that you're creating, in gibibytes (GiB). *

      *

      * FSx for Lustre file systems - The amount of storage capacity that you can configure depends on the value * that you set for StorageType and the Lustre DeploymentType, as follows: *

      *
        *
      • *

        * For SCRATCH_2, PERSISTENT_2, and PERSISTENT_1 deployment types using SSD * storage type, the valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB. *

        *
      • *
      • *

        * For PERSISTENT_1 HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB file * systems and increments of 1800 GiB for 40 MB/s/TiB file systems. *

        *
      • *
      • *

        * For SCRATCH_1 deployment type, valid values are 1200 GiB, 2400 GiB, and increments of 3600 GiB. *

        *
      • *
      *

      * FSx for ONTAP file systems - The amount of storage capacity that you can configure depends on the value of * the HAPairs property. The minimum value is calculated as 1,024 * HAPairs and the * maximum is calculated as 524,288 * HAPairs. *

      *

      * FSx for OpenZFS file systems - The amount of storage capacity that you can configure is from 64 GiB up to * 524,288 GiB (512 TiB). *

      *

      * FSx for Windows File Server file systems - The amount of storage capacity that you can configure depends * on the value that you set for StorageType as follows: *

      *
        *
      • *

        * For SSD storage, valid values are 32 GiB-65,536 GiB (64 TiB). *

        *
      • *
      • *

        * For HDD storage, valid values are 2000 GiB-65,536 GiB (64 TiB). *

        *
      • *
      * * @param storageCapacity * Sets the storage capacity of the file system that you're creating, in gibibytes (GiB).

      *

      * FSx for Lustre file systems - The amount of storage capacity that you can configure depends on the * value that you set for StorageType and the Lustre DeploymentType, as follows: *

      *
        *
      • *

        * For SCRATCH_2, PERSISTENT_2, and PERSISTENT_1 deployment types * using SSD storage type, the valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB. *

        *
      • *
      • *

        * For PERSISTENT_1 HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB * file systems and increments of 1800 GiB for 40 MB/s/TiB file systems. *

        *
      • *
      • *

        * For SCRATCH_1 deployment type, valid values are 1200 GiB, 2400 GiB, and increments of 3600 * GiB. *

        *
      • *
      *

      * FSx for ONTAP file systems - The amount of storage capacity that you can configure depends on the * value of the HAPairs property. The minimum value is calculated as 1,024 * * HAPairs and the maximum is calculated as 524,288 * HAPairs. *

      *

      * FSx for OpenZFS file systems - The amount of storage capacity that you can configure is from 64 GiB * up to 524,288 GiB (512 TiB). *

      *

      * FSx for Windows File Server file systems - The amount of storage capacity that you can configure * depends on the value that you set for StorageType as follows: *

      *
        *
      • *

        * For SSD storage, valid values are 32 GiB-65,536 GiB (64 TiB). *

        *
      • *
      • *

        * For HDD storage, valid values are 2000 GiB-65,536 GiB (64 TiB). *

        *
      • * @return Returns a reference to this object so that method calls can be chained together. */ public CreateFileSystemRequest withStorageCapacity(Integer storageCapacity) { setStorageCapacity(storageCapacity); return this; } /** *

        * Sets the storage type for the file system that you're creating. Valid values are SSD and * HDD. *

        *
          *
        • *

          * Set to SSD to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, and * OpenZFS deployment types. *

          *
        • *
        • *

          * Set to HDD to use hard disk drive storage. HDD is supported on SINGLE_AZ_2 and * MULTI_AZ_1 Windows file system deployment types, and on PERSISTENT_1 Lustre file system * deployment types. *

          *
        • *
        *

        * Default value is SSD. For more information, see Storage * type options in the FSx for Windows File Server User Guide and Multiple storage * options in the FSx for Lustre User Guide. *

        * * @param storageType * Sets the storage type for the file system that you're creating. Valid values are SSD and * HDD.

        *
          *
        • *

          * Set to SSD to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, * and OpenZFS deployment types. *

          *
        • *
        • *

          * Set to HDD to use hard disk drive storage. HDD is supported on SINGLE_AZ_2 and * MULTI_AZ_1 Windows file system deployment types, and on PERSISTENT_1 Lustre file * system deployment types. *

          *
        • *
        *

        * Default value is SSD. For more information, see * Storage type options in the FSx for Windows File Server User Guide and Multiple storage * options in the FSx for Lustre User Guide. * @see StorageType */ public void setStorageType(String storageType) { this.storageType = storageType; } /** *

        * Sets the storage type for the file system that you're creating. Valid values are SSD and * HDD. *

        *
          *
        • *

          * Set to SSD to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, and * OpenZFS deployment types. *

          *
        • *
        • *

          * Set to HDD to use hard disk drive storage. HDD is supported on SINGLE_AZ_2 and * MULTI_AZ_1 Windows file system deployment types, and on PERSISTENT_1 Lustre file system * deployment types. *

          *
        • *
        *

        * Default value is SSD. For more information, see Storage * type options in the FSx for Windows File Server User Guide and Multiple storage * options in the FSx for Lustre User Guide. *

        * * @return Sets the storage type for the file system that you're creating. Valid values are SSD and * HDD.

        *
          *
        • *

          * Set to SSD to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, * and OpenZFS deployment types. *

          *
        • *
        • *

          * Set to HDD to use hard disk drive storage. HDD is supported on SINGLE_AZ_2 and * MULTI_AZ_1 Windows file system deployment types, and on PERSISTENT_1 Lustre * file system deployment types. *

          *
        • *
        *

        * Default value is SSD. For more information, see * Storage type options in the FSx for Windows File Server User Guide and Multiple storage * options in the FSx for Lustre User Guide. * @see StorageType */ public String getStorageType() { return this.storageType; } /** *

        * Sets the storage type for the file system that you're creating. Valid values are SSD and * HDD. *

        *
          *
        • *

          * Set to SSD to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, and * OpenZFS deployment types. *

          *
        • *
        • *

          * Set to HDD to use hard disk drive storage. HDD is supported on SINGLE_AZ_2 and * MULTI_AZ_1 Windows file system deployment types, and on PERSISTENT_1 Lustre file system * deployment types. *

          *
        • *
        *

        * Default value is SSD. For more information, see Storage * type options in the FSx for Windows File Server User Guide and Multiple storage * options in the FSx for Lustre User Guide. *

        * * @param storageType * Sets the storage type for the file system that you're creating. Valid values are SSD and * HDD.

        *
          *
        • *

          * Set to SSD to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, * and OpenZFS deployment types. *

          *
        • *
        • *

          * Set to HDD to use hard disk drive storage. HDD is supported on SINGLE_AZ_2 and * MULTI_AZ_1 Windows file system deployment types, and on PERSISTENT_1 Lustre file * system deployment types. *

          *
        • *
        *

        * Default value is SSD. For more information, see * Storage type options in the FSx for Windows File Server User Guide and Multiple storage * options in the FSx for Lustre User Guide. * @return Returns a reference to this object so that method calls can be chained together. * @see StorageType */ public CreateFileSystemRequest withStorageType(String storageType) { setStorageType(storageType); return this; } /** *

        * Sets the storage type for the file system that you're creating. Valid values are SSD and * HDD. *

        *
          *
        • *

          * Set to SSD to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, and * OpenZFS deployment types. *

          *
        • *
        • *

          * Set to HDD to use hard disk drive storage. HDD is supported on SINGLE_AZ_2 and * MULTI_AZ_1 Windows file system deployment types, and on PERSISTENT_1 Lustre file system * deployment types. *

          *
        • *
        *

        * Default value is SSD. For more information, see Storage * type options in the FSx for Windows File Server User Guide and Multiple storage * options in the FSx for Lustre User Guide. *

        * * @param storageType * Sets the storage type for the file system that you're creating. Valid values are SSD and * HDD.

        *
          *
        • *

          * Set to SSD to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, * and OpenZFS deployment types. *

          *
        • *
        • *

          * Set to HDD to use hard disk drive storage. HDD is supported on SINGLE_AZ_2 and * MULTI_AZ_1 Windows file system deployment types, and on PERSISTENT_1 Lustre file * system deployment types. *

          *
        • *
        *

        * Default value is SSD. For more information, see * Storage type options in the FSx for Windows File Server User Guide and Multiple storage * options in the FSx for Lustre User Guide. * @return Returns a reference to this object so that method calls can be chained together. * @see StorageType */ public CreateFileSystemRequest withStorageType(StorageType storageType) { this.storageType = storageType.toString(); return this; } /** *

        * Specifies the IDs of the subnets that the file system will be accessible from. For Windows and ONTAP * MULTI_AZ_1 deployment types,provide exactly two subnet IDs, one for the preferred file server and * one for the standby file server. You specify one of these subnets as the preferred subnet using the * WindowsConfiguration > PreferredSubnetID or * OntapConfiguration > PreferredSubnetID properties. For more information about Multi-AZ file * system configuration, see Availability and * durability: Single-AZ and Multi-AZ file systems in the Amazon FSx for Windows User Guide and Availability and * durability in the Amazon FSx for ONTAP User Guide. *

        *

        * For Windows SINGLE_AZ_1 and SINGLE_AZ_2 and all Lustre deployment types, provide * exactly one subnet ID. The file server is launched in that subnet's Availability Zone. *

        * * @return Specifies the IDs of the subnets that the file system will be accessible from. For Windows and ONTAP * MULTI_AZ_1 deployment types,provide exactly two subnet IDs, one for the preferred file * server and one for the standby file server. You specify one of these subnets as the preferred subnet * using the WindowsConfiguration > PreferredSubnetID or * OntapConfiguration > PreferredSubnetID properties. For more information about Multi-AZ * file system configuration, see Availability * and durability: Single-AZ and Multi-AZ file systems in the Amazon FSx for Windows User Guide * and * Availability and durability in the Amazon FSx for ONTAP User Guide.

        *

        * For Windows SINGLE_AZ_1 and SINGLE_AZ_2 and all Lustre deployment types, * provide exactly one subnet ID. The file server is launched in that subnet's Availability Zone. */ public java.util.List getSubnetIds() { return subnetIds; } /** *

        * Specifies the IDs of the subnets that the file system will be accessible from. For Windows and ONTAP * MULTI_AZ_1 deployment types,provide exactly two subnet IDs, one for the preferred file server and * one for the standby file server. You specify one of these subnets as the preferred subnet using the * WindowsConfiguration > PreferredSubnetID or * OntapConfiguration > PreferredSubnetID properties. For more information about Multi-AZ file * system configuration, see Availability and * durability: Single-AZ and Multi-AZ file systems in the Amazon FSx for Windows User Guide and Availability and * durability in the Amazon FSx for ONTAP User Guide. *

        *

        * For Windows SINGLE_AZ_1 and SINGLE_AZ_2 and all Lustre deployment types, provide * exactly one subnet ID. The file server is launched in that subnet's Availability Zone. *

        * * @param subnetIds * Specifies the IDs of the subnets that the file system will be accessible from. For Windows and ONTAP * MULTI_AZ_1 deployment types,provide exactly two subnet IDs, one for the preferred file server * and one for the standby file server. You specify one of these subnets as the preferred subnet using the * WindowsConfiguration > PreferredSubnetID or * OntapConfiguration > PreferredSubnetID properties. For more information about Multi-AZ * file system configuration, see Availability * and durability: Single-AZ and Multi-AZ file systems in the Amazon FSx for Windows User Guide * and * Availability and durability in the Amazon FSx for ONTAP User Guide.

        *

        * For Windows SINGLE_AZ_1 and SINGLE_AZ_2 and all Lustre deployment types, provide * exactly one subnet ID. The file server is launched in that subnet's Availability Zone. */ public void setSubnetIds(java.util.Collection subnetIds) { if (subnetIds == null) { this.subnetIds = null; return; } this.subnetIds = new java.util.ArrayList(subnetIds); } /** *

        * Specifies the IDs of the subnets that the file system will be accessible from. For Windows and ONTAP * MULTI_AZ_1 deployment types,provide exactly two subnet IDs, one for the preferred file server and * one for the standby file server. You specify one of these subnets as the preferred subnet using the * WindowsConfiguration > PreferredSubnetID or * OntapConfiguration > PreferredSubnetID properties. For more information about Multi-AZ file * system configuration, see Availability and * durability: Single-AZ and Multi-AZ file systems in the Amazon FSx for Windows User Guide and Availability and * durability in the Amazon FSx for ONTAP User Guide. *

        *

        * For Windows SINGLE_AZ_1 and SINGLE_AZ_2 and all Lustre deployment types, provide * exactly one subnet ID. The file server is launched in that subnet's Availability Zone. *

        *

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

        * * @param subnetIds * Specifies the IDs of the subnets that the file system will be accessible from. For Windows and ONTAP * MULTI_AZ_1 deployment types,provide exactly two subnet IDs, one for the preferred file server * and one for the standby file server. You specify one of these subnets as the preferred subnet using the * WindowsConfiguration > PreferredSubnetID or * OntapConfiguration > PreferredSubnetID properties. For more information about Multi-AZ * file system configuration, see Availability * and durability: Single-AZ and Multi-AZ file systems in the Amazon FSx for Windows User Guide * and * Availability and durability in the Amazon FSx for ONTAP User Guide.

        *

        * For Windows SINGLE_AZ_1 and SINGLE_AZ_2 and all Lustre deployment types, provide * exactly one subnet ID. The file server is launched in that subnet's Availability Zone. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateFileSystemRequest withSubnetIds(String... subnetIds) { if (this.subnetIds == null) { setSubnetIds(new java.util.ArrayList(subnetIds.length)); } for (String ele : subnetIds) { this.subnetIds.add(ele); } return this; } /** *

        * Specifies the IDs of the subnets that the file system will be accessible from. For Windows and ONTAP * MULTI_AZ_1 deployment types,provide exactly two subnet IDs, one for the preferred file server and * one for the standby file server. You specify one of these subnets as the preferred subnet using the * WindowsConfiguration > PreferredSubnetID or * OntapConfiguration > PreferredSubnetID properties. For more information about Multi-AZ file * system configuration, see Availability and * durability: Single-AZ and Multi-AZ file systems in the Amazon FSx for Windows User Guide and Availability and * durability in the Amazon FSx for ONTAP User Guide. *

        *

        * For Windows SINGLE_AZ_1 and SINGLE_AZ_2 and all Lustre deployment types, provide * exactly one subnet ID. The file server is launched in that subnet's Availability Zone. *

        * * @param subnetIds * Specifies the IDs of the subnets that the file system will be accessible from. For Windows and ONTAP * MULTI_AZ_1 deployment types,provide exactly two subnet IDs, one for the preferred file server * and one for the standby file server. You specify one of these subnets as the preferred subnet using the * WindowsConfiguration > PreferredSubnetID or * OntapConfiguration > PreferredSubnetID properties. For more information about Multi-AZ * file system configuration, see Availability * and durability: Single-AZ and Multi-AZ file systems in the Amazon FSx for Windows User Guide * and * Availability and durability in the Amazon FSx for ONTAP User Guide.

        *

        * For Windows SINGLE_AZ_1 and SINGLE_AZ_2 and all Lustre deployment types, provide * exactly one subnet ID. The file server is launched in that subnet's Availability Zone. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateFileSystemRequest withSubnetIds(java.util.Collection subnetIds) { setSubnetIds(subnetIds); return this; } /** *

        * A list of IDs specifying the security groups to apply to all network interfaces created for file system access. * This list isn't returned in later requests to describe the file system. *

        * *

        * You must specify a security group if you are creating a Multi-AZ FSx for ONTAP file system in a VPC subnet that * has been shared with you. *

        *
        * * @return A list of IDs specifying the security groups to apply to all network interfaces created for file system * access. This list isn't returned in later requests to describe the file system.

        *

        * You must specify a security group if you are creating a Multi-AZ FSx for ONTAP file system in a VPC * subnet that has been shared with you. *

        */ public java.util.List getSecurityGroupIds() { return securityGroupIds; } /** *

        * A list of IDs specifying the security groups to apply to all network interfaces created for file system access. * This list isn't returned in later requests to describe the file system. *

        * *

        * You must specify a security group if you are creating a Multi-AZ FSx for ONTAP file system in a VPC subnet that * has been shared with you. *

        *
        * * @param securityGroupIds * A list of IDs specifying the security groups to apply to all network interfaces created for file system * access. This list isn't returned in later requests to describe the file system.

        *

        * You must specify a security group if you are creating a Multi-AZ FSx for ONTAP file system in a VPC subnet * that has been shared with you. *

        */ public void setSecurityGroupIds(java.util.Collection securityGroupIds) { if (securityGroupIds == null) { this.securityGroupIds = null; return; } this.securityGroupIds = new java.util.ArrayList(securityGroupIds); } /** *

        * A list of IDs specifying the security groups to apply to all network interfaces created for file system access. * This list isn't returned in later requests to describe the file system. *

        * *

        * You must specify a security group if you are creating a Multi-AZ FSx for ONTAP file system in a VPC subnet that * has been shared with you. *

        *
        *

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

        * * @param securityGroupIds * A list of IDs specifying the security groups to apply to all network interfaces created for file system * access. This list isn't returned in later requests to describe the file system.

        *

        * You must specify a security group if you are creating a Multi-AZ FSx for ONTAP file system in a VPC subnet * that has been shared with you. *

        * @return Returns a reference to this object so that method calls can be chained together. */ public CreateFileSystemRequest withSecurityGroupIds(String... securityGroupIds) { if (this.securityGroupIds == null) { setSecurityGroupIds(new java.util.ArrayList(securityGroupIds.length)); } for (String ele : securityGroupIds) { this.securityGroupIds.add(ele); } return this; } /** *

        * A list of IDs specifying the security groups to apply to all network interfaces created for file system access. * This list isn't returned in later requests to describe the file system. *

        * *

        * You must specify a security group if you are creating a Multi-AZ FSx for ONTAP file system in a VPC subnet that * has been shared with you. *

        *
        * * @param securityGroupIds * A list of IDs specifying the security groups to apply to all network interfaces created for file system * access. This list isn't returned in later requests to describe the file system.

        *

        * You must specify a security group if you are creating a Multi-AZ FSx for ONTAP file system in a VPC subnet * that has been shared with you. *

        * @return Returns a reference to this object so that method calls can be chained together. */ public CreateFileSystemRequest withSecurityGroupIds(java.util.Collection securityGroupIds) { setSecurityGroupIds(securityGroupIds); return this; } /** *

        * The tags to apply to the file system that's being created. The key value of the Name tag appears in * the console as the file system name. *

        * * @return The tags to apply to the file system that's being created. The key value of the Name tag * appears in the console as the file system name. */ public java.util.List getTags() { return tags; } /** *

        * The tags to apply to the file system that's being created. The key value of the Name tag appears in * the console as the file system name. *

        * * @param tags * The tags to apply to the file system that's being created. The key value of the Name tag * appears in the console as the file system name. */ public void setTags(java.util.Collection tags) { if (tags == null) { this.tags = null; return; } this.tags = new java.util.ArrayList(tags); } /** *

        * The tags to apply to the file system that's being created. The key value of the Name tag appears in * the console as the file system name. *

        *

        * 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 * The tags to apply to the file system that's being created. The key value of the Name tag * appears in the console as the file system name. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateFileSystemRequest withTags(Tag... tags) { if (this.tags == null) { setTags(new java.util.ArrayList(tags.length)); } for (Tag ele : tags) { this.tags.add(ele); } return this; } /** *

        * The tags to apply to the file system that's being created. The key value of the Name tag appears in * the console as the file system name. *

        * * @param tags * The tags to apply to the file system that's being created. The key value of the Name tag * appears in the console as the file system name. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateFileSystemRequest withTags(java.util.Collection tags) { setTags(tags); return this; } /** * @param kmsKeyId */ public void setKmsKeyId(String kmsKeyId) { this.kmsKeyId = kmsKeyId; } /** * @return */ public String getKmsKeyId() { return this.kmsKeyId; } /** * @param kmsKeyId * @return Returns a reference to this object so that method calls can be chained together. */ public CreateFileSystemRequest withKmsKeyId(String kmsKeyId) { setKmsKeyId(kmsKeyId); return this; } /** *

        * The Microsoft Windows configuration for the file system that's being created. *

        * * @param windowsConfiguration * The Microsoft Windows configuration for the file system that's being created. */ public void setWindowsConfiguration(CreateFileSystemWindowsConfiguration windowsConfiguration) { this.windowsConfiguration = windowsConfiguration; } /** *

        * The Microsoft Windows configuration for the file system that's being created. *

        * * @return The Microsoft Windows configuration for the file system that's being created. */ public CreateFileSystemWindowsConfiguration getWindowsConfiguration() { return this.windowsConfiguration; } /** *

        * The Microsoft Windows configuration for the file system that's being created. *

        * * @param windowsConfiguration * The Microsoft Windows configuration for the file system that's being created. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateFileSystemRequest withWindowsConfiguration(CreateFileSystemWindowsConfiguration windowsConfiguration) { setWindowsConfiguration(windowsConfiguration); return this; } /** * @param lustreConfiguration */ public void setLustreConfiguration(CreateFileSystemLustreConfiguration lustreConfiguration) { this.lustreConfiguration = lustreConfiguration; } /** * @return */ public CreateFileSystemLustreConfiguration getLustreConfiguration() { return this.lustreConfiguration; } /** * @param lustreConfiguration * @return Returns a reference to this object so that method calls can be chained together. */ public CreateFileSystemRequest withLustreConfiguration(CreateFileSystemLustreConfiguration lustreConfiguration) { setLustreConfiguration(lustreConfiguration); return this; } /** * @param ontapConfiguration */ public void setOntapConfiguration(CreateFileSystemOntapConfiguration ontapConfiguration) { this.ontapConfiguration = ontapConfiguration; } /** * @return */ public CreateFileSystemOntapConfiguration getOntapConfiguration() { return this.ontapConfiguration; } /** * @param ontapConfiguration * @return Returns a reference to this object so that method calls can be chained together. */ public CreateFileSystemRequest withOntapConfiguration(CreateFileSystemOntapConfiguration ontapConfiguration) { setOntapConfiguration(ontapConfiguration); return this; } /** *

        * For FSx for Lustre file systems, sets the Lustre version for the file system that you're creating. Valid values * are 2.10, 2.12, and 2.15: *

        *
          *
        • *

          * 2.10 is supported by the Scratch and Persistent_1 Lustre deployment types. *

          *
        • *
        • *

          * 2.12 is supported by all Lustre deployment types, except for PERSISTENT_2 with a * metadata configuration mode. *

          *
        • *
        • *

          * 2.15 is supported by all Lustre deployment types and is recommended for all new file systems. *

          *
        • *
        *

        * Default value is 2.10, except for the following deployments: *

        *
          *
        • *

          * Default value is 2.12 when DeploymentType is set to PERSISTENT_2 without a * metadata configuration mode. *

          *
        • *
        • *

          * Default value is 2.15 when DeploymentType is set to PERSISTENT_2 with a * metadata configuration mode. *

          *
        • *
        * * @param fileSystemTypeVersion * For FSx for Lustre file systems, sets the Lustre version for the file system that you're creating. Valid * values are 2.10, 2.12, and 2.15:

        *
          *
        • *

          * 2.10 is supported by the Scratch and Persistent_1 Lustre deployment types. *

          *
        • *
        • *

          * 2.12 is supported by all Lustre deployment types, except for PERSISTENT_2 with a * metadata configuration mode. *

          *
        • *
        • *

          * 2.15 is supported by all Lustre deployment types and is recommended for all new file systems. *

          *
        • *
        *

        * Default value is 2.10, except for the following deployments: *

        *
          *
        • *

          * Default value is 2.12 when DeploymentType is set to PERSISTENT_2 * without a metadata configuration mode. *

          *
        • *
        • *

          * Default value is 2.15 when DeploymentType is set to PERSISTENT_2 * with a metadata configuration mode. *

          *
        • */ public void setFileSystemTypeVersion(String fileSystemTypeVersion) { this.fileSystemTypeVersion = fileSystemTypeVersion; } /** *

          * For FSx for Lustre file systems, sets the Lustre version for the file system that you're creating. Valid values * are 2.10, 2.12, and 2.15: *

          *
            *
          • *

            * 2.10 is supported by the Scratch and Persistent_1 Lustre deployment types. *

            *
          • *
          • *

            * 2.12 is supported by all Lustre deployment types, except for PERSISTENT_2 with a * metadata configuration mode. *

            *
          • *
          • *

            * 2.15 is supported by all Lustre deployment types and is recommended for all new file systems. *

            *
          • *
          *

          * Default value is 2.10, except for the following deployments: *

          *
            *
          • *

            * Default value is 2.12 when DeploymentType is set to PERSISTENT_2 without a * metadata configuration mode. *

            *
          • *
          • *

            * Default value is 2.15 when DeploymentType is set to PERSISTENT_2 with a * metadata configuration mode. *

            *
          • *
          * * @return For FSx for Lustre file systems, sets the Lustre version for the file system that you're creating. Valid * values are 2.10, 2.12, and 2.15:

          *
            *
          • *

            * 2.10 is supported by the Scratch and Persistent_1 Lustre deployment types. *

            *
          • *
          • *

            * 2.12 is supported by all Lustre deployment types, except for PERSISTENT_2 with * a metadata configuration mode. *

            *
          • *
          • *

            * 2.15 is supported by all Lustre deployment types and is recommended for all new file * systems. *

            *
          • *
          *

          * Default value is 2.10, except for the following deployments: *

          *
            *
          • *

            * Default value is 2.12 when DeploymentType is set to PERSISTENT_2 * without a metadata configuration mode. *

            *
          • *
          • *

            * Default value is 2.15 when DeploymentType is set to PERSISTENT_2 * with a metadata configuration mode. *

            *
          • */ public String getFileSystemTypeVersion() { return this.fileSystemTypeVersion; } /** *

            * For FSx for Lustre file systems, sets the Lustre version for the file system that you're creating. Valid values * are 2.10, 2.12, and 2.15: *

            *
              *
            • *

              * 2.10 is supported by the Scratch and Persistent_1 Lustre deployment types. *

              *
            • *
            • *

              * 2.12 is supported by all Lustre deployment types, except for PERSISTENT_2 with a * metadata configuration mode. *

              *
            • *
            • *

              * 2.15 is supported by all Lustre deployment types and is recommended for all new file systems. *

              *
            • *
            *

            * Default value is 2.10, except for the following deployments: *

            *
              *
            • *

              * Default value is 2.12 when DeploymentType is set to PERSISTENT_2 without a * metadata configuration mode. *

              *
            • *
            • *

              * Default value is 2.15 when DeploymentType is set to PERSISTENT_2 with a * metadata configuration mode. *

              *
            • *
            * * @param fileSystemTypeVersion * For FSx for Lustre file systems, sets the Lustre version for the file system that you're creating. Valid * values are 2.10, 2.12, and 2.15:

            *
              *
            • *

              * 2.10 is supported by the Scratch and Persistent_1 Lustre deployment types. *

              *
            • *
            • *

              * 2.12 is supported by all Lustre deployment types, except for PERSISTENT_2 with a * metadata configuration mode. *

              *
            • *
            • *

              * 2.15 is supported by all Lustre deployment types and is recommended for all new file systems. *

              *
            • *
            *

            * Default value is 2.10, except for the following deployments: *

            *
              *
            • *

              * Default value is 2.12 when DeploymentType is set to PERSISTENT_2 * without a metadata configuration mode. *

              *
            • *
            • *

              * Default value is 2.15 when DeploymentType is set to PERSISTENT_2 * with a metadata configuration mode. *

              *
            • * @return Returns a reference to this object so that method calls can be chained together. */ public CreateFileSystemRequest withFileSystemTypeVersion(String fileSystemTypeVersion) { setFileSystemTypeVersion(fileSystemTypeVersion); return this; } /** *

              * The OpenZFS configuration for the file system that's being created. *

              * * @param openZFSConfiguration * The OpenZFS configuration for the file system that's being created. */ public void setOpenZFSConfiguration(CreateFileSystemOpenZFSConfiguration openZFSConfiguration) { this.openZFSConfiguration = openZFSConfiguration; } /** *

              * The OpenZFS configuration for the file system that's being created. *

              * * @return The OpenZFS configuration for the file system that's being created. */ public CreateFileSystemOpenZFSConfiguration getOpenZFSConfiguration() { return this.openZFSConfiguration; } /** *

              * The OpenZFS configuration for the file system that's being created. *

              * * @param openZFSConfiguration * The OpenZFS configuration for the file system that's being created. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateFileSystemRequest withOpenZFSConfiguration(CreateFileSystemOpenZFSConfiguration openZFSConfiguration) { setOpenZFSConfiguration(openZFSConfiguration); 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 (getClientRequestToken() != null) sb.append("ClientRequestToken: ").append(getClientRequestToken()).append(","); if (getFileSystemType() != null) sb.append("FileSystemType: ").append(getFileSystemType()).append(","); if (getStorageCapacity() != null) sb.append("StorageCapacity: ").append(getStorageCapacity()).append(","); if (getStorageType() != null) sb.append("StorageType: ").append(getStorageType()).append(","); if (getSubnetIds() != null) sb.append("SubnetIds: ").append(getSubnetIds()).append(","); if (getSecurityGroupIds() != null) sb.append("SecurityGroupIds: ").append(getSecurityGroupIds()).append(","); if (getTags() != null) sb.append("Tags: ").append(getTags()).append(","); if (getKmsKeyId() != null) sb.append("KmsKeyId: ").append(getKmsKeyId()).append(","); if (getWindowsConfiguration() != null) sb.append("WindowsConfiguration: ").append(getWindowsConfiguration()).append(","); if (getLustreConfiguration() != null) sb.append("LustreConfiguration: ").append(getLustreConfiguration()).append(","); if (getOntapConfiguration() != null) sb.append("OntapConfiguration: ").append(getOntapConfiguration()).append(","); if (getFileSystemTypeVersion() != null) sb.append("FileSystemTypeVersion: ").append(getFileSystemTypeVersion()).append(","); if (getOpenZFSConfiguration() != null) sb.append("OpenZFSConfiguration: ").append(getOpenZFSConfiguration()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateFileSystemRequest == false) return false; CreateFileSystemRequest other = (CreateFileSystemRequest) obj; if (other.getClientRequestToken() == null ^ this.getClientRequestToken() == null) return false; if (other.getClientRequestToken() != null && other.getClientRequestToken().equals(this.getClientRequestToken()) == false) return false; if (other.getFileSystemType() == null ^ this.getFileSystemType() == null) return false; if (other.getFileSystemType() != null && other.getFileSystemType().equals(this.getFileSystemType()) == false) return false; if (other.getStorageCapacity() == null ^ this.getStorageCapacity() == null) return false; if (other.getStorageCapacity() != null && other.getStorageCapacity().equals(this.getStorageCapacity()) == false) return false; if (other.getStorageType() == null ^ this.getStorageType() == null) return false; if (other.getStorageType() != null && other.getStorageType().equals(this.getStorageType()) == false) return false; if (other.getSubnetIds() == null ^ this.getSubnetIds() == null) return false; if (other.getSubnetIds() != null && other.getSubnetIds().equals(this.getSubnetIds()) == false) return false; if (other.getSecurityGroupIds() == null ^ this.getSecurityGroupIds() == null) return false; if (other.getSecurityGroupIds() != null && other.getSecurityGroupIds().equals(this.getSecurityGroupIds()) == 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.getKmsKeyId() == null ^ this.getKmsKeyId() == null) return false; if (other.getKmsKeyId() != null && other.getKmsKeyId().equals(this.getKmsKeyId()) == false) return false; if (other.getWindowsConfiguration() == null ^ this.getWindowsConfiguration() == null) return false; if (other.getWindowsConfiguration() != null && other.getWindowsConfiguration().equals(this.getWindowsConfiguration()) == false) return false; if (other.getLustreConfiguration() == null ^ this.getLustreConfiguration() == null) return false; if (other.getLustreConfiguration() != null && other.getLustreConfiguration().equals(this.getLustreConfiguration()) == false) return false; if (other.getOntapConfiguration() == null ^ this.getOntapConfiguration() == null) return false; if (other.getOntapConfiguration() != null && other.getOntapConfiguration().equals(this.getOntapConfiguration()) == false) return false; if (other.getFileSystemTypeVersion() == null ^ this.getFileSystemTypeVersion() == null) return false; if (other.getFileSystemTypeVersion() != null && other.getFileSystemTypeVersion().equals(this.getFileSystemTypeVersion()) == false) return false; if (other.getOpenZFSConfiguration() == null ^ this.getOpenZFSConfiguration() == null) return false; if (other.getOpenZFSConfiguration() != null && other.getOpenZFSConfiguration().equals(this.getOpenZFSConfiguration()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getClientRequestToken() == null) ? 0 : getClientRequestToken().hashCode()); hashCode = prime * hashCode + ((getFileSystemType() == null) ? 0 : getFileSystemType().hashCode()); hashCode = prime * hashCode + ((getStorageCapacity() == null) ? 0 : getStorageCapacity().hashCode()); hashCode = prime * hashCode + ((getStorageType() == null) ? 0 : getStorageType().hashCode()); hashCode = prime * hashCode + ((getSubnetIds() == null) ? 0 : getSubnetIds().hashCode()); hashCode = prime * hashCode + ((getSecurityGroupIds() == null) ? 0 : getSecurityGroupIds().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); hashCode = prime * hashCode + ((getKmsKeyId() == null) ? 0 : getKmsKeyId().hashCode()); hashCode = prime * hashCode + ((getWindowsConfiguration() == null) ? 0 : getWindowsConfiguration().hashCode()); hashCode = prime * hashCode + ((getLustreConfiguration() == null) ? 0 : getLustreConfiguration().hashCode()); hashCode = prime * hashCode + ((getOntapConfiguration() == null) ? 0 : getOntapConfiguration().hashCode()); hashCode = prime * hashCode + ((getFileSystemTypeVersion() == null) ? 0 : getFileSystemTypeVersion().hashCode()); hashCode = prime * hashCode + ((getOpenZFSConfiguration() == null) ? 0 : getOpenZFSConfiguration().hashCode()); return hashCode; } @Override public CreateFileSystemRequest clone() { return (CreateFileSystemRequest) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy