Class CreateFileCacheRequest

All Implemented Interfaces:
SdkPojo, ToCopyableBuilder<CreateFileCacheRequest.Builder,CreateFileCacheRequest>

@Generated("software.amazon.awssdk:codegen") public final class CreateFileCacheRequest extends FSxRequest implements ToCopyableBuilder<CreateFileCacheRequest.Builder,CreateFileCacheRequest>
  • Method Details

    • clientRequestToken

      public final String clientRequestToken()

      An idempotency token for resource creation, in a string of up to 63 ASCII characters. This token is automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web Services SDK.

      By using the idempotent operation, you can retry a CreateFileCache operation without the risk of creating an extra cache. This approach can be useful when an initial call fails in a way that makes it unclear whether a cache was created. Examples are if a transport level timeout occurred, or your connection was reset. If you use the same client request token and the initial call created a cache, the client receives success as long as the parameters are the same.

      Returns:
      An idempotency token for resource creation, in a string of up to 63 ASCII characters. This token is automatically filled on your behalf when you use the Command Line Interface (CLI) or an Amazon Web Services SDK.

      By using the idempotent operation, you can retry a CreateFileCache operation without the risk of creating an extra cache. This approach can be useful when an initial call fails in a way that makes it unclear whether a cache was created. Examples are if a transport level timeout occurred, or your connection was reset. If you use the same client request token and the initial call created a cache, the client receives success as long as the parameters are the same.

    • fileCacheType

      public final FileCacheType fileCacheType()

      The type of cache that you're creating, which must be LUSTRE.

      If the service returns an enum value that is not available in the current SDK version, fileCacheType will return FileCacheType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from fileCacheTypeAsString().

      Returns:
      The type of cache that you're creating, which must be LUSTRE.
      See Also:
    • fileCacheTypeAsString

      public final String fileCacheTypeAsString()

      The type of cache that you're creating, which must be LUSTRE.

      If the service returns an enum value that is not available in the current SDK version, fileCacheType will return FileCacheType.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available from fileCacheTypeAsString().

      Returns:
      The type of cache that you're creating, which must be LUSTRE.
      See Also:
    • fileCacheTypeVersion

      public final String fileCacheTypeVersion()

      Sets the Lustre version for the cache that you're creating, which must be 2.12.

      Returns:
      Sets the Lustre version for the cache that you're creating, which must be 2.12.
    • storageCapacity

      public final Integer storageCapacity()

      The storage capacity of the cache in gibibytes (GiB). Valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB.

      Returns:
      The storage capacity of the cache in gibibytes (GiB). Valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB.
    • hasSubnetIds

      public final boolean hasSubnetIds()
      For responses, this returns true if the service returned a value for the SubnetIds property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • subnetIds

      public final List<String> subnetIds()
      Returns the value of the SubnetIds property for this object.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasSubnetIds() method.

      Returns:
      The value of the SubnetIds property for this object.
    • hasSecurityGroupIds

      public final boolean hasSecurityGroupIds()
      For responses, this returns true if the service returned a value for the SecurityGroupIds property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • securityGroupIds

      public final List<String> securityGroupIds()

      A list of IDs specifying the security groups to apply to all network interfaces created for Amazon File Cache access. This list isn't returned in later requests to describe the cache.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasSecurityGroupIds() method.

      Returns:
      A list of IDs specifying the security groups to apply to all network interfaces created for Amazon File Cache access. This list isn't returned in later requests to describe the cache.
    • hasTags

      public final boolean hasTags()
      For responses, this returns true if the service returned a value for the Tags property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • tags

      public final List<Tag> tags()
      Returns the value of the Tags property for this object.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasTags() method.

      Returns:
      The value of the Tags property for this object.
    • copyTagsToDataRepositoryAssociations

      public final Boolean copyTagsToDataRepositoryAssociations()

      A boolean flag indicating whether tags for the cache should be copied to data repository associations. This value defaults to false.

      Returns:
      A boolean flag indicating whether tags for the cache should be copied to data repository associations. This value defaults to false.
    • kmsKeyId

      public final String kmsKeyId()

      Specifies the ID of the Key Management Service (KMS) key to use for encrypting data on an Amazon File Cache. If a KmsKeyId isn't specified, the Amazon FSx-managed KMS key for your account is used. For more information, see Encrypt in the Key Management Service API Reference.

      Returns:
      Specifies the ID of the Key Management Service (KMS) key to use for encrypting data on an Amazon File Cache. If a KmsKeyId isn't specified, the Amazon FSx-managed KMS key for your account is used. For more information, see Encrypt in the Key Management Service API Reference.
    • lustreConfiguration

      public final CreateFileCacheLustreConfiguration lustreConfiguration()

      The configuration for the Amazon File Cache resource being created.

      Returns:
      The configuration for the Amazon File Cache resource being created.
    • hasDataRepositoryAssociations

      public final boolean hasDataRepositoryAssociations()
      For responses, this returns true if the service returned a value for the DataRepositoryAssociations property. This DOES NOT check that the value is non-empty (for which, you should check the isEmpty() method on the property). This is useful because the SDK will never return a null collection or map, but you may need to differentiate between the service returning nothing (or null) and the service returning an empty collection or map. For requests, this returns true if a value for the property was specified in the request builder, and false if a value was not specified.
    • dataRepositoryAssociations

      public final List<FileCacheDataRepositoryAssociation> dataRepositoryAssociations()

      A list of up to 8 configurations for data repository associations (DRAs) to be created during the cache creation. The DRAs link the cache to either an Amazon S3 data repository or a Network File System (NFS) data repository that supports the NFSv3 protocol.

      The DRA configurations must meet the following requirements:

      • All configurations on the list must be of the same data repository type, either all S3 or all NFS. A cache can't link to different data repository types at the same time.

      • An NFS DRA must link to an NFS file system that supports the NFSv3 protocol.

      DRA automatic import and automatic export is not supported.

      Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.

      This method will never return null. If you would like to know whether the service returned this field (so that you can differentiate between null and empty), you can use the hasDataRepositoryAssociations() method.

      Returns:
      A list of up to 8 configurations for data repository associations (DRAs) to be created during the cache creation. The DRAs link the cache to either an Amazon S3 data repository or a Network File System (NFS) data repository that supports the NFSv3 protocol.

      The DRA configurations must meet the following requirements:

      • All configurations on the list must be of the same data repository type, either all S3 or all NFS. A cache can't link to different data repository types at the same time.

      • An NFS DRA must link to an NFS file system that supports the NFSv3 protocol.

      DRA automatic import and automatic export is not supported.

    • toBuilder

      public CreateFileCacheRequest.Builder toBuilder()
      Description copied from interface: ToCopyableBuilder
      Take this object and create a builder that contains all of the current property values of this object.
      Specified by:
      toBuilder in interface ToCopyableBuilder<CreateFileCacheRequest.Builder,CreateFileCacheRequest>
      Specified by:
      toBuilder in class FSxRequest
      Returns:
      a builder for type T
    • builder

      public static CreateFileCacheRequest.Builder builder()
    • serializableBuilderClass

      public static Class<? extends CreateFileCacheRequest.Builder> serializableBuilderClass()
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class AwsRequest
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class AwsRequest
    • equalsBySdkFields

      public final boolean equalsBySdkFields(Object obj)
      Description copied from interface: SdkPojo
      Indicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in an SdkPojo class, and is generated based on a service model.

      If an SdkPojo class does not have any inherited fields, equalsBySdkFields and equals are essentially the same.

      Specified by:
      equalsBySdkFields in interface SdkPojo
      Parameters:
      obj - the object to be compared with
      Returns:
      true if the other object equals to this object by sdk fields, false otherwise.
    • toString

      public final String toString()
      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.
      Overrides:
      toString in class Object
    • getValueForField

      public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
      Description copied from class: SdkRequest
      Used to retrieve the value of a field from any class that extends SdkRequest. The field name specified should match the member name from the corresponding service-2.json model specified in the codegen-resources folder for a given service. The class specifies what class to cast the returned value to. If the returned value is also a modeled class, the SdkRequest.getValueForField(String, Class) method will again be available.
      Overrides:
      getValueForField in class SdkRequest
      Parameters:
      fieldName - The name of the member to be retrieved.
      clazz - The class to cast the returned object to.
      Returns:
      Optional containing the casted return value
    • sdkFields

      public final List<SdkField<?>> sdkFields()
      Specified by:
      sdkFields in interface SdkPojo
      Returns:
      List of SdkField in this POJO. May be empty list but should never be null.