/* * Copyright 2018-2023 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; /** *
* A description of a specific Amazon File Cache resource, which is a response object from the
* DescribeFileCaches
operation.
*
* The system-generated, unique ID of the cache. *
*/ private String fileCacheId; /** *
* The type of cache, which must be LUSTRE
.
*
* The Lustre version of the cache, which must be 2.12
.
*
* The lifecycle status of the cache. The following are the possible values and what they mean: *
*
* AVAILABLE
- The cache is in a healthy state, and is reachable and available for use.
*
* CREATING
- The new cache is being created.
*
* DELETING
- An existing cache is being deleted.
*
* UPDATING
- The cache is undergoing a customer-initiated update.
*
* FAILED
- An existing cache has experienced an unrecoverable failure. When creating a new cache, the
* cache was unable to be created.
*
* A structure providing details of any failures that occurred. *
*/ private FileCacheFailureDetails failureDetails; /** ** The storage capacity of the cache in gibibytes (GiB). *
*/ private Integer storageCapacity; private String vpcId; private java.util.List* The Domain Name System (DNS) name for the cache. *
*/ private String dNSName; /** *
* 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.
*
* The configuration for the Amazon File Cache resource. *
*/ private FileCacheLustreConfiguration lustreConfiguration; /** ** A list of IDs of data repository associations that are associated with this cache. *
*/ private java.util.List* The system-generated, unique ID of the cache. *
* * @param fileCacheId * The system-generated, unique ID of the cache. */ public void setFileCacheId(String fileCacheId) { this.fileCacheId = fileCacheId; } /** ** The system-generated, unique ID of the cache. *
* * @return The system-generated, unique ID of the cache. */ public String getFileCacheId() { return this.fileCacheId; } /** ** The system-generated, unique ID of the cache. *
* * @param fileCacheId * The system-generated, unique ID of the cache. * @return Returns a reference to this object so that method calls can be chained together. */ public FileCache withFileCacheId(String fileCacheId) { setFileCacheId(fileCacheId); return this; } /** *
* The type of cache, which must be LUSTRE
.
*
LUSTRE
.
* @see FileCacheType
*/
public void setFileCacheType(String fileCacheType) {
this.fileCacheType = fileCacheType;
}
/**
*
* The type of cache, which must be LUSTRE
.
*
LUSTRE
.
* @see FileCacheType
*/
public String getFileCacheType() {
return this.fileCacheType;
}
/**
*
* The type of cache, which must be LUSTRE
.
*
LUSTRE
.
* @return Returns a reference to this object so that method calls can be chained together.
* @see FileCacheType
*/
public FileCache withFileCacheType(String fileCacheType) {
setFileCacheType(fileCacheType);
return this;
}
/**
*
* The type of cache, which must be LUSTRE
.
*
LUSTRE
.
* @return Returns a reference to this object so that method calls can be chained together.
* @see FileCacheType
*/
public FileCache withFileCacheType(FileCacheType fileCacheType) {
this.fileCacheType = fileCacheType.toString();
return this;
}
/**
*
* The Lustre version of the cache, which must be 2.12
.
*
2.12
.
*/
public void setFileCacheTypeVersion(String fileCacheTypeVersion) {
this.fileCacheTypeVersion = fileCacheTypeVersion;
}
/**
*
* The Lustre version of the cache, which must be 2.12
.
*
2.12
.
*/
public String getFileCacheTypeVersion() {
return this.fileCacheTypeVersion;
}
/**
*
* The Lustre version of the cache, which must be 2.12
.
*
2.12
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FileCache withFileCacheTypeVersion(String fileCacheTypeVersion) {
setFileCacheTypeVersion(fileCacheTypeVersion);
return this;
}
/**
* * The lifecycle status of the cache. The following are the possible values and what they mean: *
*
* AVAILABLE
- The cache is in a healthy state, and is reachable and available for use.
*
* CREATING
- The new cache is being created.
*
* DELETING
- An existing cache is being deleted.
*
* UPDATING
- The cache is undergoing a customer-initiated update.
*
* FAILED
- An existing cache has experienced an unrecoverable failure. When creating a new cache, the
* cache was unable to be created.
*
* AVAILABLE
- The cache is in a healthy state, and is reachable and available for use.
*
* CREATING
- The new cache is being created.
*
* DELETING
- An existing cache is being deleted.
*
* UPDATING
- The cache is undergoing a customer-initiated update.
*
* FAILED
- An existing cache has experienced an unrecoverable failure. When creating a new
* cache, the cache was unable to be created.
*
* The lifecycle status of the cache. The following are the possible values and what they mean: *
*
* AVAILABLE
- The cache is in a healthy state, and is reachable and available for use.
*
* CREATING
- The new cache is being created.
*
* DELETING
- An existing cache is being deleted.
*
* UPDATING
- The cache is undergoing a customer-initiated update.
*
* FAILED
- An existing cache has experienced an unrecoverable failure. When creating a new cache, the
* cache was unable to be created.
*
* AVAILABLE
- The cache is in a healthy state, and is reachable and available for use.
*
* CREATING
- The new cache is being created.
*
* DELETING
- An existing cache is being deleted.
*
* UPDATING
- The cache is undergoing a customer-initiated update.
*
* FAILED
- An existing cache has experienced an unrecoverable failure. When creating a new
* cache, the cache was unable to be created.
*
* The lifecycle status of the cache. The following are the possible values and what they mean: *
*
* AVAILABLE
- The cache is in a healthy state, and is reachable and available for use.
*
* CREATING
- The new cache is being created.
*
* DELETING
- An existing cache is being deleted.
*
* UPDATING
- The cache is undergoing a customer-initiated update.
*
* FAILED
- An existing cache has experienced an unrecoverable failure. When creating a new cache, the
* cache was unable to be created.
*
* AVAILABLE
- The cache is in a healthy state, and is reachable and available for use.
*
* CREATING
- The new cache is being created.
*
* DELETING
- An existing cache is being deleted.
*
* UPDATING
- The cache is undergoing a customer-initiated update.
*
* FAILED
- An existing cache has experienced an unrecoverable failure. When creating a new
* cache, the cache was unable to be created.
*
* The lifecycle status of the cache. The following are the possible values and what they mean: *
*
* AVAILABLE
- The cache is in a healthy state, and is reachable and available for use.
*
* CREATING
- The new cache is being created.
*
* DELETING
- An existing cache is being deleted.
*
* UPDATING
- The cache is undergoing a customer-initiated update.
*
* FAILED
- An existing cache has experienced an unrecoverable failure. When creating a new cache, the
* cache was unable to be created.
*
* AVAILABLE
- The cache is in a healthy state, and is reachable and available for use.
*
* CREATING
- The new cache is being created.
*
* DELETING
- An existing cache is being deleted.
*
* UPDATING
- The cache is undergoing a customer-initiated update.
*
* FAILED
- An existing cache has experienced an unrecoverable failure. When creating a new
* cache, the cache was unable to be created.
*
* A structure providing details of any failures that occurred. *
* * @param failureDetails * A structure providing details of any failures that occurred. */ public void setFailureDetails(FileCacheFailureDetails failureDetails) { this.failureDetails = failureDetails; } /** ** A structure providing details of any failures that occurred. *
* * @return A structure providing details of any failures that occurred. */ public FileCacheFailureDetails getFailureDetails() { return this.failureDetails; } /** ** A structure providing details of any failures that occurred. *
* * @param failureDetails * A structure providing details of any failures that occurred. * @return Returns a reference to this object so that method calls can be chained together. */ public FileCache withFailureDetails(FileCacheFailureDetails failureDetails) { setFailureDetails(failureDetails); return this; } /** ** The storage capacity of the cache in gibibytes (GiB). *
* * @param storageCapacity * The storage capacity of the cache in gibibytes (GiB). */ public void setStorageCapacity(Integer storageCapacity) { this.storageCapacity = storageCapacity; } /** ** The storage capacity of the cache in gibibytes (GiB). *
* * @return The storage capacity of the cache in gibibytes (GiB). */ public Integer getStorageCapacity() { return this.storageCapacity; } /** ** The storage capacity of the cache in gibibytes (GiB). *
* * @param storageCapacity * The storage capacity of the cache in gibibytes (GiB). * @return Returns a reference to this object so that method calls can be chained together. */ public FileCache withStorageCapacity(Integer storageCapacity) { setStorageCapacity(storageCapacity); return this; } /** * @param vpcId */ public void setVpcId(String vpcId) { this.vpcId = vpcId; } /** * @return */ public String getVpcId() { return this.vpcId; } /** * @param vpcId * @return Returns a reference to this object so that method calls can be chained together. */ public FileCache withVpcId(String vpcId) { setVpcId(vpcId); return this; } /** * @return */ public java.util.List* 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 * @return Returns a reference to this object so that method calls can be chained together. */ public FileCache withSubnetIds(String... subnetIds) { if (this.subnetIds == null) { setSubnetIds(new java.util.ArrayList* NOTE: This method appends the values to the existing list (if any). Use * {@link #setNetworkInterfaceIds(java.util.Collection)} or {@link #withNetworkInterfaceIds(java.util.Collection)} * if you want to override the existing values. *
* * @param networkInterfaceIds * @return Returns a reference to this object so that method calls can be chained together. */ public FileCache withNetworkInterfaceIds(String... networkInterfaceIds) { if (this.networkInterfaceIds == null) { setNetworkInterfaceIds(new java.util.ArrayList* The Domain Name System (DNS) name for the cache. *
* * @param dNSName * The Domain Name System (DNS) name for the cache. */ public void setDNSName(String dNSName) { this.dNSName = dNSName; } /** ** The Domain Name System (DNS) name for the cache. *
* * @return The Domain Name System (DNS) name for the cache. */ public String getDNSName() { return this.dNSName; } /** ** The Domain Name System (DNS) name for the cache. *
* * @param dNSName * The Domain Name System (DNS) name for the cache. * @return Returns a reference to this object so that method calls can be chained together. */ public FileCache withDNSName(String dNSName) { setDNSName(dNSName); return this; } /** *
* 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.
*
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.
*/
public void setKmsKeyId(String kmsKeyId) {
this.kmsKeyId = 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.
*
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.
*/
public String getKmsKeyId() {
return this.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.
*
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.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FileCache withKmsKeyId(String kmsKeyId) {
setKmsKeyId(kmsKeyId);
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 FileCache withResourceARN(String resourceARN) {
setResourceARN(resourceARN);
return this;
}
/**
* * The configuration for the Amazon File Cache resource. *
* * @param lustreConfiguration * The configuration for the Amazon File Cache resource. */ public void setLustreConfiguration(FileCacheLustreConfiguration lustreConfiguration) { this.lustreConfiguration = lustreConfiguration; } /** ** The configuration for the Amazon File Cache resource. *
* * @return The configuration for the Amazon File Cache resource. */ public FileCacheLustreConfiguration getLustreConfiguration() { return this.lustreConfiguration; } /** ** The configuration for the Amazon File Cache resource. *
* * @param lustreConfiguration * The configuration for the Amazon File Cache resource. * @return Returns a reference to this object so that method calls can be chained together. */ public FileCache withLustreConfiguration(FileCacheLustreConfiguration lustreConfiguration) { setLustreConfiguration(lustreConfiguration); return this; } /** ** A list of IDs of data repository associations that are associated with this cache. *
* * @return A list of IDs of data repository associations that are associated with this cache. */ public java.util.List* A list of IDs of data repository associations that are associated with this cache. *
* * @param dataRepositoryAssociationIds * A list of IDs of data repository associations that are associated with this cache. */ public void setDataRepositoryAssociationIds(java.util.Collection* A list of IDs of data repository associations that are associated with this cache. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setDataRepositoryAssociationIds(java.util.Collection)} or * {@link #withDataRepositoryAssociationIds(java.util.Collection)} if you want to override the existing values. *
* * @param dataRepositoryAssociationIds * A list of IDs of data repository associations that are associated with this cache. * @return Returns a reference to this object so that method calls can be chained together. */ public FileCache withDataRepositoryAssociationIds(String... dataRepositoryAssociationIds) { if (this.dataRepositoryAssociationIds == null) { setDataRepositoryAssociationIds(new java.util.ArrayList* A list of IDs of data repository associations that are associated with this cache. *
* * @param dataRepositoryAssociationIds * A list of IDs of data repository associations that are associated with this cache. * @return Returns a reference to this object so that method calls can be chained together. */ public FileCache withDataRepositoryAssociationIds(java.util.Collection