/* * 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.elasticfilesystem.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* A description of the file system. *
* * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class FileSystemDescription implements Serializable, Cloneable, StructuredPojo { /** ** The Amazon Web Services account that created the file system. *
*/ private String ownerId; /** ** The opaque string specified in the request. *
*/ private String creationToken; /** ** The ID of the file system, assigned by Amazon EFS. *
*/ private String fileSystemId; /** *
* The Amazon Resource Name (ARN) for the EFS file system, in the format
* arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id
.
* Example with sample data:
* arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567
*
* The time that the file system was created, in seconds (since 1970-01-01T00:00:00Z). *
*/ private java.util.Date creationTime; /** ** The lifecycle phase of the file system. *
*/ private String lifeCycleState; /** *
* You can add tags to a file system, including a Name
tag. For more information, see
* CreateFileSystem. If the file system has a Name
tag, Amazon EFS returns the value in this
* field.
*
* The current number of mount targets that the file system has. For more information, see CreateMountTarget. *
*/ private Integer numberOfMountTargets; /** *
* The latest known metered size (in bytes) of data stored in the file system, in its Value
field, and
* the time at which that size was determined in its Timestamp
field. The Timestamp
value
* is the integer number of seconds since 1970-01-01T00:00:00Z. The SizeInBytes
value doesn't represent
* the size of a consistent snapshot of the file system, but it is eventually consistent when there are no writes to
* the file system. That is, SizeInBytes
represents actual size only if the file system is not modified
* for a period longer than a couple of hours. Otherwise, the value is not the exact size that the file system was
* at any point in time.
*
* The performance mode of the file system. *
*/ private String performanceMode; /** ** A Boolean value that, if true, indicates that the file system is encrypted. *
*/ private Boolean encrypted; /** ** The ID of an KMS key used to protect the encrypted file system. *
*/ private String kmsKeyId; /** ** Displays the file system's throughput mode. For more information, see Throughput modes in the * Amazon EFS User Guide. *
*/ private String throughputMode; /** *
* The amount of provisioned throughput, measured in MiB/s, for the file system. Valid for file systems using
* ThroughputMode
set to provisioned
.
*
* Describes the Amazon Web Services Availability Zone in which the file system is located, and is valid only for * file systems using One Zone storage classes. For more information, see Using EFS storage classes in the * Amazon EFS User Guide. *
*/ private String availabilityZoneName; /** *
* The unique and consistent identifier of the Availability Zone in which the file system's One Zone storage classes
* exist. For example, use1-az1
is an Availability Zone ID for the us-east-1 Amazon Web Services
* Region, and it has the same location in every Amazon Web Services account.
*
* The tags associated with the file system, presented as an array of Tag
objects.
*
* The Amazon Web Services account that created the file system. *
* * @param ownerId * The Amazon Web Services account that created the file system. */ public void setOwnerId(String ownerId) { this.ownerId = ownerId; } /** ** The Amazon Web Services account that created the file system. *
* * @return The Amazon Web Services account that created the file system. */ public String getOwnerId() { return this.ownerId; } /** ** The Amazon Web Services account that created the file system. *
* * @param ownerId * The Amazon Web Services account that created the file system. * @return Returns a reference to this object so that method calls can be chained together. */ public FileSystemDescription withOwnerId(String ownerId) { setOwnerId(ownerId); return this; } /** ** The opaque string specified in the request. *
* * @param creationToken * The opaque string specified in the request. */ public void setCreationToken(String creationToken) { this.creationToken = creationToken; } /** ** The opaque string specified in the request. *
* * @return The opaque string specified in the request. */ public String getCreationToken() { return this.creationToken; } /** ** The opaque string specified in the request. *
* * @param creationToken * The opaque string specified in the request. * @return Returns a reference to this object so that method calls can be chained together. */ public FileSystemDescription withCreationToken(String creationToken) { setCreationToken(creationToken); return this; } /** ** The ID of the file system, assigned by Amazon EFS. *
* * @param fileSystemId * The ID of the file system, assigned by Amazon EFS. */ public void setFileSystemId(String fileSystemId) { this.fileSystemId = fileSystemId; } /** ** The ID of the file system, assigned by Amazon EFS. *
* * @return The ID of the file system, assigned by Amazon EFS. */ public String getFileSystemId() { return this.fileSystemId; } /** ** The ID of the file system, assigned by Amazon EFS. *
* * @param fileSystemId * The ID of the file system, assigned by Amazon EFS. * @return Returns a reference to this object so that method calls can be chained together. */ public FileSystemDescription withFileSystemId(String fileSystemId) { setFileSystemId(fileSystemId); return this; } /** *
* The Amazon Resource Name (ARN) for the EFS file system, in the format
* arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id
.
* Example with sample data:
* arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567
*
arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id
.
* Example with sample data:
* arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567
*/
public void setFileSystemArn(String fileSystemArn) {
this.fileSystemArn = fileSystemArn;
}
/**
*
* The Amazon Resource Name (ARN) for the EFS file system, in the format
* arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id
.
* Example with sample data:
* arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567
*
arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id
* . Example with sample data:
* arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567
*/
public String getFileSystemArn() {
return this.fileSystemArn;
}
/**
*
* The Amazon Resource Name (ARN) for the EFS file system, in the format
* arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id
.
* Example with sample data:
* arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567
*
arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id
.
* Example with sample data:
* arn:aws:elasticfilesystem:us-west-2:1111333322228888:file-system/fs-01234567
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FileSystemDescription withFileSystemArn(String fileSystemArn) {
setFileSystemArn(fileSystemArn);
return this;
}
/**
* * The time that the file system was created, in seconds (since 1970-01-01T00:00:00Z). *
* * @param creationTime * The time that the file system was created, in seconds (since 1970-01-01T00:00:00Z). */ public void setCreationTime(java.util.Date creationTime) { this.creationTime = creationTime; } /** ** The time that the file system was created, in seconds (since 1970-01-01T00:00:00Z). *
* * @return The time that the file system was created, in seconds (since 1970-01-01T00:00:00Z). */ public java.util.Date getCreationTime() { return this.creationTime; } /** ** The time that the file system was created, in seconds (since 1970-01-01T00:00:00Z). *
* * @param creationTime * The time that the file system was created, in seconds (since 1970-01-01T00:00:00Z). * @return Returns a reference to this object so that method calls can be chained together. */ public FileSystemDescription withCreationTime(java.util.Date creationTime) { setCreationTime(creationTime); return this; } /** ** The lifecycle phase of the file system. *
* * @param lifeCycleState * The lifecycle phase of the file system. * @see LifeCycleState */ public void setLifeCycleState(String lifeCycleState) { this.lifeCycleState = lifeCycleState; } /** ** The lifecycle phase of the file system. *
* * @return The lifecycle phase of the file system. * @see LifeCycleState */ public String getLifeCycleState() { return this.lifeCycleState; } /** ** The lifecycle phase of the file system. *
* * @param lifeCycleState * The lifecycle phase of the file system. * @return Returns a reference to this object so that method calls can be chained together. * @see LifeCycleState */ public FileSystemDescription withLifeCycleState(String lifeCycleState) { setLifeCycleState(lifeCycleState); return this; } /** ** The lifecycle phase of the file system. *
* * @param lifeCycleState * The lifecycle phase of the file system. * @see LifeCycleState */ public void setLifeCycleState(LifeCycleState lifeCycleState) { withLifeCycleState(lifeCycleState); } /** ** The lifecycle phase of the file system. *
* * @param lifeCycleState * The lifecycle phase of the file system. * @return Returns a reference to this object so that method calls can be chained together. * @see LifeCycleState */ public FileSystemDescription withLifeCycleState(LifeCycleState lifeCycleState) { this.lifeCycleState = lifeCycleState.toString(); return this; } /** *
* You can add tags to a file system, including a Name
tag. For more information, see
* CreateFileSystem. If the file system has a Name
tag, Amazon EFS returns the value in this
* field.
*
Name
tag. For more information, see
* CreateFileSystem. If the file system has a Name
tag, Amazon EFS returns the value in
* this field.
*/
public void setName(String name) {
this.name = name;
}
/**
*
* You can add tags to a file system, including a Name
tag. For more information, see
* CreateFileSystem. If the file system has a Name
tag, Amazon EFS returns the value in this
* field.
*
Name
tag. For more information, see
* CreateFileSystem. If the file system has a Name
tag, Amazon EFS returns the value in
* this field.
*/
public String getName() {
return this.name;
}
/**
*
* You can add tags to a file system, including a Name
tag. For more information, see
* CreateFileSystem. If the file system has a Name
tag, Amazon EFS returns the value in this
* field.
*
Name
tag. For more information, see
* CreateFileSystem. If the file system has a Name
tag, Amazon EFS returns the value in
* this field.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FileSystemDescription withName(String name) {
setName(name);
return this;
}
/**
* * The current number of mount targets that the file system has. For more information, see CreateMountTarget. *
* * @param numberOfMountTargets * The current number of mount targets that the file system has. For more information, see * CreateMountTarget. */ public void setNumberOfMountTargets(Integer numberOfMountTargets) { this.numberOfMountTargets = numberOfMountTargets; } /** ** The current number of mount targets that the file system has. For more information, see CreateMountTarget. *
* * @return The current number of mount targets that the file system has. For more information, see * CreateMountTarget. */ public Integer getNumberOfMountTargets() { return this.numberOfMountTargets; } /** ** The current number of mount targets that the file system has. For more information, see CreateMountTarget. *
* * @param numberOfMountTargets * The current number of mount targets that the file system has. For more information, see * CreateMountTarget. * @return Returns a reference to this object so that method calls can be chained together. */ public FileSystemDescription withNumberOfMountTargets(Integer numberOfMountTargets) { setNumberOfMountTargets(numberOfMountTargets); return this; } /** *
* The latest known metered size (in bytes) of data stored in the file system, in its Value
field, and
* the time at which that size was determined in its Timestamp
field. The Timestamp
value
* is the integer number of seconds since 1970-01-01T00:00:00Z. The SizeInBytes
value doesn't represent
* the size of a consistent snapshot of the file system, but it is eventually consistent when there are no writes to
* the file system. That is, SizeInBytes
represents actual size only if the file system is not modified
* for a period longer than a couple of hours. Otherwise, the value is not the exact size that the file system was
* at any point in time.
*
Value
* field, and the time at which that size was determined in its Timestamp
field. The
* Timestamp
value is the integer number of seconds since 1970-01-01T00:00:00Z. The
* SizeInBytes
value doesn't represent the size of a consistent snapshot of the file system, but
* it is eventually consistent when there are no writes to the file system. That is, SizeInBytes
* represents actual size only if the file system is not modified for a period longer than a couple of hours.
* Otherwise, the value is not the exact size that the file system was at any point in time.
*/
public void setSizeInBytes(FileSystemSize sizeInBytes) {
this.sizeInBytes = sizeInBytes;
}
/**
*
* The latest known metered size (in bytes) of data stored in the file system, in its Value
field, and
* the time at which that size was determined in its Timestamp
field. The Timestamp
value
* is the integer number of seconds since 1970-01-01T00:00:00Z. The SizeInBytes
value doesn't represent
* the size of a consistent snapshot of the file system, but it is eventually consistent when there are no writes to
* the file system. That is, SizeInBytes
represents actual size only if the file system is not modified
* for a period longer than a couple of hours. Otherwise, the value is not the exact size that the file system was
* at any point in time.
*
Value
* field, and the time at which that size was determined in its Timestamp
field. The
* Timestamp
value is the integer number of seconds since 1970-01-01T00:00:00Z. The
* SizeInBytes
value doesn't represent the size of a consistent snapshot of the file system,
* but it is eventually consistent when there are no writes to the file system. That is,
* SizeInBytes
represents actual size only if the file system is not modified for a period
* longer than a couple of hours. Otherwise, the value is not the exact size that the file system was at any
* point in time.
*/
public FileSystemSize getSizeInBytes() {
return this.sizeInBytes;
}
/**
*
* The latest known metered size (in bytes) of data stored in the file system, in its Value
field, and
* the time at which that size was determined in its Timestamp
field. The Timestamp
value
* is the integer number of seconds since 1970-01-01T00:00:00Z. The SizeInBytes
value doesn't represent
* the size of a consistent snapshot of the file system, but it is eventually consistent when there are no writes to
* the file system. That is, SizeInBytes
represents actual size only if the file system is not modified
* for a period longer than a couple of hours. Otherwise, the value is not the exact size that the file system was
* at any point in time.
*
Value
* field, and the time at which that size was determined in its Timestamp
field. The
* Timestamp
value is the integer number of seconds since 1970-01-01T00:00:00Z. The
* SizeInBytes
value doesn't represent the size of a consistent snapshot of the file system, but
* it is eventually consistent when there are no writes to the file system. That is, SizeInBytes
* represents actual size only if the file system is not modified for a period longer than a couple of hours.
* Otherwise, the value is not the exact size that the file system was at any point in time.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FileSystemDescription withSizeInBytes(FileSystemSize sizeInBytes) {
setSizeInBytes(sizeInBytes);
return this;
}
/**
* * The performance mode of the file system. *
* * @param performanceMode * The performance mode of the file system. * @see PerformanceMode */ public void setPerformanceMode(String performanceMode) { this.performanceMode = performanceMode; } /** ** The performance mode of the file system. *
* * @return The performance mode of the file system. * @see PerformanceMode */ public String getPerformanceMode() { return this.performanceMode; } /** ** The performance mode of the file system. *
* * @param performanceMode * The performance mode of the file system. * @return Returns a reference to this object so that method calls can be chained together. * @see PerformanceMode */ public FileSystemDescription withPerformanceMode(String performanceMode) { setPerformanceMode(performanceMode); return this; } /** ** The performance mode of the file system. *
* * @param performanceMode * The performance mode of the file system. * @see PerformanceMode */ public void setPerformanceMode(PerformanceMode performanceMode) { withPerformanceMode(performanceMode); } /** ** The performance mode of the file system. *
* * @param performanceMode * The performance mode of the file system. * @return Returns a reference to this object so that method calls can be chained together. * @see PerformanceMode */ public FileSystemDescription withPerformanceMode(PerformanceMode performanceMode) { this.performanceMode = performanceMode.toString(); return this; } /** ** A Boolean value that, if true, indicates that the file system is encrypted. *
* * @param encrypted * A Boolean value that, if true, indicates that the file system is encrypted. */ public void setEncrypted(Boolean encrypted) { this.encrypted = encrypted; } /** ** A Boolean value that, if true, indicates that the file system is encrypted. *
* * @return A Boolean value that, if true, indicates that the file system is encrypted. */ public Boolean getEncrypted() { return this.encrypted; } /** ** A Boolean value that, if true, indicates that the file system is encrypted. *
* * @param encrypted * A Boolean value that, if true, indicates that the file system is encrypted. * @return Returns a reference to this object so that method calls can be chained together. */ public FileSystemDescription withEncrypted(Boolean encrypted) { setEncrypted(encrypted); return this; } /** ** A Boolean value that, if true, indicates that the file system is encrypted. *
* * @return A Boolean value that, if true, indicates that the file system is encrypted. */ public Boolean isEncrypted() { return this.encrypted; } /** ** The ID of an KMS key used to protect the encrypted file system. *
* * @param kmsKeyId * The ID of an KMS key used to protect the encrypted file system. */ public void setKmsKeyId(String kmsKeyId) { this.kmsKeyId = kmsKeyId; } /** ** The ID of an KMS key used to protect the encrypted file system. *
* * @return The ID of an KMS key used to protect the encrypted file system. */ public String getKmsKeyId() { return this.kmsKeyId; } /** ** The ID of an KMS key used to protect the encrypted file system. *
* * @param kmsKeyId * The ID of an KMS key used to protect the encrypted file system. * @return Returns a reference to this object so that method calls can be chained together. */ public FileSystemDescription withKmsKeyId(String kmsKeyId) { setKmsKeyId(kmsKeyId); return this; } /** ** Displays the file system's throughput mode. For more information, see Throughput modes in the * Amazon EFS User Guide. *
* * @param throughputMode * Displays the file system's throughput mode. For more information, see Throughput modes in * the Amazon EFS User Guide. * @see ThroughputMode */ public void setThroughputMode(String throughputMode) { this.throughputMode = throughputMode; } /** ** Displays the file system's throughput mode. For more information, see Throughput modes in the * Amazon EFS User Guide. *
* * @return Displays the file system's throughput mode. For more information, see Throughput modes * in the Amazon EFS User Guide. * @see ThroughputMode */ public String getThroughputMode() { return this.throughputMode; } /** ** Displays the file system's throughput mode. For more information, see Throughput modes in the * Amazon EFS User Guide. *
* * @param throughputMode * Displays the file system's throughput mode. For more information, see Throughput modes in * the Amazon EFS User Guide. * @return Returns a reference to this object so that method calls can be chained together. * @see ThroughputMode */ public FileSystemDescription withThroughputMode(String throughputMode) { setThroughputMode(throughputMode); return this; } /** ** Displays the file system's throughput mode. For more information, see Throughput modes in the * Amazon EFS User Guide. *
* * @param throughputMode * Displays the file system's throughput mode. For more information, see Throughput modes in * the Amazon EFS User Guide. * @see ThroughputMode */ public void setThroughputMode(ThroughputMode throughputMode) { withThroughputMode(throughputMode); } /** ** Displays the file system's throughput mode. For more information, see Throughput modes in the * Amazon EFS User Guide. *
* * @param throughputMode * Displays the file system's throughput mode. For more information, see Throughput modes in * the Amazon EFS User Guide. * @return Returns a reference to this object so that method calls can be chained together. * @see ThroughputMode */ public FileSystemDescription withThroughputMode(ThroughputMode throughputMode) { this.throughputMode = throughputMode.toString(); return this; } /** *
* The amount of provisioned throughput, measured in MiB/s, for the file system. Valid for file systems using
* ThroughputMode
set to provisioned
.
*
ThroughputMode
set to provisioned
.
*/
public void setProvisionedThroughputInMibps(Double provisionedThroughputInMibps) {
this.provisionedThroughputInMibps = provisionedThroughputInMibps;
}
/**
*
* The amount of provisioned throughput, measured in MiB/s, for the file system. Valid for file systems using
* ThroughputMode
set to provisioned
.
*
ThroughputMode
set to provisioned
.
*/
public Double getProvisionedThroughputInMibps() {
return this.provisionedThroughputInMibps;
}
/**
*
* The amount of provisioned throughput, measured in MiB/s, for the file system. Valid for file systems using
* ThroughputMode
set to provisioned
.
*
ThroughputMode
set to provisioned
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FileSystemDescription withProvisionedThroughputInMibps(Double provisionedThroughputInMibps) {
setProvisionedThroughputInMibps(provisionedThroughputInMibps);
return this;
}
/**
* * Describes the Amazon Web Services Availability Zone in which the file system is located, and is valid only for * file systems using One Zone storage classes. For more information, see Using EFS storage classes in the * Amazon EFS User Guide. *
* * @param availabilityZoneName * Describes the Amazon Web Services Availability Zone in which the file system is located, and is valid only * for file systems using One Zone storage classes. For more information, see Using EFS storage classes in the * Amazon EFS User Guide. */ public void setAvailabilityZoneName(String availabilityZoneName) { this.availabilityZoneName = availabilityZoneName; } /** ** Describes the Amazon Web Services Availability Zone in which the file system is located, and is valid only for * file systems using One Zone storage classes. For more information, see Using EFS storage classes in the * Amazon EFS User Guide. *
* * @return Describes the Amazon Web Services Availability Zone in which the file system is located, and is valid * only for file systems using One Zone storage classes. For more information, see Using EFS storage classes in * the Amazon EFS User Guide. */ public String getAvailabilityZoneName() { return this.availabilityZoneName; } /** ** Describes the Amazon Web Services Availability Zone in which the file system is located, and is valid only for * file systems using One Zone storage classes. For more information, see Using EFS storage classes in the * Amazon EFS User Guide. *
* * @param availabilityZoneName * Describes the Amazon Web Services Availability Zone in which the file system is located, and is valid only * for file systems using One Zone storage classes. For more information, see Using EFS storage classes in the * Amazon EFS User Guide. * @return Returns a reference to this object so that method calls can be chained together. */ public FileSystemDescription withAvailabilityZoneName(String availabilityZoneName) { setAvailabilityZoneName(availabilityZoneName); return this; } /** *
* The unique and consistent identifier of the Availability Zone in which the file system's One Zone storage classes
* exist. For example, use1-az1
is an Availability Zone ID for the us-east-1 Amazon Web Services
* Region, and it has the same location in every Amazon Web Services account.
*
use1-az1
is an Availability Zone ID for the us-east-1 Amazon Web
* Services Region, and it has the same location in every Amazon Web Services account.
*/
public void setAvailabilityZoneId(String availabilityZoneId) {
this.availabilityZoneId = availabilityZoneId;
}
/**
*
* The unique and consistent identifier of the Availability Zone in which the file system's One Zone storage classes
* exist. For example, use1-az1
is an Availability Zone ID for the us-east-1 Amazon Web Services
* Region, and it has the same location in every Amazon Web Services account.
*
use1-az1
is an Availability Zone ID for the us-east-1 Amazon Web
* Services Region, and it has the same location in every Amazon Web Services account.
*/
public String getAvailabilityZoneId() {
return this.availabilityZoneId;
}
/**
*
* The unique and consistent identifier of the Availability Zone in which the file system's One Zone storage classes
* exist. For example, use1-az1
is an Availability Zone ID for the us-east-1 Amazon Web Services
* Region, and it has the same location in every Amazon Web Services account.
*
use1-az1
is an Availability Zone ID for the us-east-1 Amazon Web
* Services Region, and it has the same location in every Amazon Web Services account.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FileSystemDescription withAvailabilityZoneId(String availabilityZoneId) {
setAvailabilityZoneId(availabilityZoneId);
return this;
}
/**
*
* The tags associated with the file system, presented as an array of Tag
objects.
*
Tag
objects.
*/
public java.util.List
* The tags associated with the file system, presented as an array of Tag
objects.
*
Tag
objects.
*/
public void setTags(java.util.Collection
* The tags associated with the file system, presented as an array of Tag
objects.
*
* 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 associated with the file system, presented as an array ofTag
objects.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FileSystemDescription withTags(Tag... tags) {
if (this.tags == null) {
setTags(new com.amazonaws.internal.SdkInternalList
* The tags associated with the file system, presented as an array of Tag
objects.
*
Tag
objects.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public FileSystemDescription withTags(java.util.Collection