com.amazonaws.services.redshift.model.Cluster Maven / Gradle / Ivy
Show all versions of aws-java-sdk-redshift Show documentation
/*
* 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.redshift.model;
import java.io.Serializable;
import javax.annotation.Generated;
/**
*
* Describes a cluster.
*
*
* @see AWS API
* Documentation
*/
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class Cluster implements Serializable, Cloneable {
/**
*
* The unique identifier of the cluster.
*
*/
private String clusterIdentifier;
/**
*
* The node type for the nodes in the cluster.
*
*/
private String nodeType;
/**
*
* The current state of the cluster. Possible values are the following:
*
*
* -
*
* available
*
*
* -
*
* available, prep-for-resize
*
*
* -
*
* available, resize-cleanup
*
*
* -
*
* cancelling-resize
*
*
* -
*
* creating
*
*
* -
*
* deleting
*
*
* -
*
* final-snapshot
*
*
* -
*
* hardware-failure
*
*
* -
*
* incompatible-hsm
*
*
* -
*
* incompatible-network
*
*
* -
*
* incompatible-parameters
*
*
* -
*
* incompatible-restore
*
*
* -
*
* modifying
*
*
* -
*
* paused
*
*
* -
*
* rebooting
*
*
* -
*
* renaming
*
*
* -
*
* resizing
*
*
* -
*
* rotating-keys
*
*
* -
*
* storage-full
*
*
* -
*
* updating-hsm
*
*
*
*/
private String clusterStatus;
/**
*
* The availability status of the cluster for queries. Possible values are the following:
*
*
* -
*
* Available - The cluster is available for queries.
*
*
* -
*
* Unavailable - The cluster is not available for queries.
*
*
* -
*
* Maintenance - The cluster is intermittently available for queries due to maintenance activities.
*
*
* -
*
* Modifying - The cluster is intermittently available for queries due to changes that modify the cluster.
*
*
* -
*
* Failed - The cluster failed and is not available for queries.
*
*
*
*/
private String clusterAvailabilityStatus;
/**
*
* The status of a modify operation, if any, initiated for the cluster.
*
*/
private String modifyStatus;
/**
*
* The admin user name for the cluster. This name is used to connect to the database that is specified in the
* DBName parameter.
*
*/
private String masterUsername;
/**
*
* The name of the initial database that was created when the cluster was created. This same name is returned for
* the life of the cluster. If an initial database was not specified, a database named dev
dev was
* created by default.
*
*/
private String dBName;
/**
*
* The connection endpoint.
*
*/
private Endpoint endpoint;
/**
*
* The date and time that the cluster was created.
*
*/
private java.util.Date clusterCreateTime;
/**
*
* The number of days that automatic cluster snapshots are retained.
*
*/
private Integer automatedSnapshotRetentionPeriod;
/**
*
* The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained
* indefinitely. This setting doesn't change the retention period of existing snapshots.
*
*
* The value must be either -1 or an integer between 1 and 3,653.
*
*/
private Integer manualSnapshotRetentionPeriod;
/**
*
* A list of cluster security group that are associated with the cluster. Each security group is represented by an
* element that contains ClusterSecurityGroup.Name
and ClusterSecurityGroup.Status
* subelements.
*
*
* Cluster security groups are used when the cluster is not created in an Amazon Virtual Private Cloud (VPC).
* Clusters that are created in a VPC use VPC security groups, which are listed by the VpcSecurityGroups
* parameter.
*
*/
private com.amazonaws.internal.SdkInternalList clusterSecurityGroups;
/**
*
* A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that are associated with the cluster. This
* parameter is returned only if the cluster is in a VPC.
*
*/
private com.amazonaws.internal.SdkInternalList vpcSecurityGroups;
/**
*
* The list of cluster parameter groups that are associated with this cluster. Each parameter group in the list is
* returned with its status.
*
*/
private com.amazonaws.internal.SdkInternalList clusterParameterGroups;
/**
*
* The name of the subnet group that is associated with the cluster. This parameter is valid only when the cluster
* is in a VPC.
*
*/
private String clusterSubnetGroupName;
/**
*
* The identifier of the VPC the cluster is in, if the cluster is in a VPC.
*
*/
private String vpcId;
/**
*
* The name of the Availability Zone in which the cluster is located.
*
*/
private String availabilityZone;
/**
*
* The weekly time range, in Universal Coordinated Time (UTC), during which system maintenance can occur.
*
*/
private String preferredMaintenanceWindow;
/**
*
* A value that, if present, indicates that changes to the cluster are pending. Specific pending changes are
* identified by subelements.
*
*/
private PendingModifiedValues pendingModifiedValues;
/**
*
* The version ID of the Amazon Redshift engine that is running on the cluster.
*
*/
private String clusterVersion;
/**
*
* A boolean value that, if true
, indicates that major version upgrades will be applied automatically
* to the cluster during the maintenance window.
*
*/
private Boolean allowVersionUpgrade;
/**
*
* The number of compute nodes in the cluster.
*
*/
private Integer numberOfNodes;
/**
*
* A boolean value that, if true
, indicates that the cluster can be accessed from a public network.
*
*/
private Boolean publiclyAccessible;
/**
*
* A boolean value that, if true
, indicates that data in the cluster is encrypted at rest.
*
*/
private Boolean encrypted;
/**
*
* A value that describes the status of a cluster restore action. This parameter returns null if the cluster was not
* created by restoring a snapshot.
*
*/
private RestoreStatus restoreStatus;
/** */
private DataTransferProgress dataTransferProgress;
/**
*
* A value that reports whether the Amazon Redshift cluster has finished applying any hardware security module (HSM)
* settings changes specified in a modify cluster command.
*
*
* Values: active, applying
*
*/
private HsmStatus hsmStatus;
/**
*
* A value that returns the destination region and retention period that are configured for cross-region snapshot
* copy.
*
*/
private ClusterSnapshotCopyStatus clusterSnapshotCopyStatus;
/**
*
* The public key for the cluster.
*
*/
private String clusterPublicKey;
/**
*
* The nodes in the cluster.
*
*/
private com.amazonaws.internal.SdkInternalList clusterNodes;
/**
*
* The status of the elastic IP (EIP) address.
*
*/
private ElasticIpStatus elasticIpStatus;
/**
*
* The specific revision number of the database in the cluster.
*
*/
private String clusterRevisionNumber;
/**
*
* The list of tags for the cluster.
*
*/
private com.amazonaws.internal.SdkInternalList tags;
/**
*
* The Key Management Service (KMS) key ID of the encryption key used to encrypt data in the cluster.
*
*/
private String kmsKeyId;
/**
*
* An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster
* that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the
* Amazon Redshift Cluster Management Guide.
*
*
* If this option is true
, enhanced VPC routing is enabled.
*
*
* Default: false
*
*/
private Boolean enhancedVpcRouting;
/**
*
* A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other Amazon Web
* Services services.
*
*/
private com.amazonaws.internal.SdkInternalList iamRoles;
/**
*
* Cluster operations that are waiting to be started.
*
*/
private com.amazonaws.internal.SdkInternalList pendingActions;
/**
*
* The name of the maintenance track for the cluster.
*
*/
private String maintenanceTrackName;
/**
*
* The number of nodes that you can resize the cluster to with the elastic resize method.
*
*/
private String elasticResizeNumberOfNodeOptions;
/**
*
* Describes a group of DeferredMaintenanceWindow
objects.
*
*/
private com.amazonaws.internal.SdkInternalList deferredMaintenanceWindows;
/**
*
* A unique identifier for the cluster snapshot schedule.
*
*/
private String snapshotScheduleIdentifier;
/**
*
* The current state of the cluster snapshot schedule.
*
*/
private String snapshotScheduleState;
/**
*
* The date and time when the next snapshot is expected to be taken for clusters with a valid snapshot schedule and
* backups enabled.
*
*/
private java.util.Date expectedNextSnapshotScheduleTime;
/**
*
* The status of next expected snapshot for clusters having a valid snapshot schedule and backups enabled. Possible
* values are the following:
*
*
* -
*
* OnTrack - The next snapshot is expected to be taken on time.
*
*
* -
*
* Pending - The next snapshot is pending to be taken.
*
*
*
*/
private String expectedNextSnapshotScheduleTimeStatus;
/**
*
* The date and time in UTC when system maintenance can begin.
*
*/
private java.util.Date nextMaintenanceWindowStartTime;
/**
*
* Returns the following:
*
*
* -
*
* AllowCancelResize: a boolean value indicating if the resize operation can be cancelled.
*
*
* -
*
* ResizeType: Returns ClassicResize
*
*
*
*/
private ResizeInfo resizeInfo;
/**
*
* Describes the status of the Availability Zone relocation operation.
*
*/
private String availabilityZoneRelocationStatus;
/**
*
* The namespace Amazon Resource Name (ARN) of the cluster.
*
*/
private String clusterNamespaceArn;
/**
*
* The total storage capacity of the cluster in megabytes.
*
*/
private Long totalStorageCapacityInMegaBytes;
/**
*
* This field is retired. Amazon Redshift automatically determines whether to use AQUA (Advanced Query Accelerator).
*
*/
private AquaConfiguration aquaConfiguration;
/**
*
* The Amazon Resource Name (ARN) for the IAM role set as default for the cluster.
*
*/
private String defaultIamRoleArn;
/**
*
* The status of the reserved-node exchange request. Statuses include in-progress and requested.
*
*/
private ReservedNodeExchangeStatus reservedNodeExchangeStatus;
/**
*
* The custom domain name associated with the cluster.
*
*/
private String customDomainName;
/**
*
* The certificate Amazon Resource Name (ARN) for the custom domain name.
*
*/
private String customDomainCertificateArn;
/**
*
* The expiration date for the certificate associated with the custom domain name.
*
*/
private java.util.Date customDomainCertificateExpiryDate;
/**
*
* The Amazon Resource Name (ARN) for the cluster's admin user credentials secret.
*
*/
private String masterPasswordSecretArn;
/**
*
* The ID of the Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials secret.
*
*/
private String masterPasswordSecretKmsKeyId;
/**
*
* The IP address type for the cluster. Possible values are ipv4
and dualstack
.
*
*/
private String ipAddressType;
/**
*
* A boolean value that, if true, indicates that the cluster is deployed in two Availability Zones.
*
*/
private String multiAZ;
/**
*
* The secondary compute unit of a cluster, if Multi-AZ deployment is turned on.
*
*/
private SecondaryClusterInfo multiAZSecondary;
/**
*
* The unique identifier of the cluster.
*
*
* @param clusterIdentifier
* The unique identifier of the cluster.
*/
public void setClusterIdentifier(String clusterIdentifier) {
this.clusterIdentifier = clusterIdentifier;
}
/**
*
* The unique identifier of the cluster.
*
*
* @return The unique identifier of the cluster.
*/
public String getClusterIdentifier() {
return this.clusterIdentifier;
}
/**
*
* The unique identifier of the cluster.
*
*
* @param clusterIdentifier
* The unique identifier of the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterIdentifier(String clusterIdentifier) {
setClusterIdentifier(clusterIdentifier);
return this;
}
/**
*
* The node type for the nodes in the cluster.
*
*
* @param nodeType
* The node type for the nodes in the cluster.
*/
public void setNodeType(String nodeType) {
this.nodeType = nodeType;
}
/**
*
* The node type for the nodes in the cluster.
*
*
* @return The node type for the nodes in the cluster.
*/
public String getNodeType() {
return this.nodeType;
}
/**
*
* The node type for the nodes in the cluster.
*
*
* @param nodeType
* The node type for the nodes in the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withNodeType(String nodeType) {
setNodeType(nodeType);
return this;
}
/**
*
* The current state of the cluster. Possible values are the following:
*
*
* -
*
* available
*
*
* -
*
* available, prep-for-resize
*
*
* -
*
* available, resize-cleanup
*
*
* -
*
* cancelling-resize
*
*
* -
*
* creating
*
*
* -
*
* deleting
*
*
* -
*
* final-snapshot
*
*
* -
*
* hardware-failure
*
*
* -
*
* incompatible-hsm
*
*
* -
*
* incompatible-network
*
*
* -
*
* incompatible-parameters
*
*
* -
*
* incompatible-restore
*
*
* -
*
* modifying
*
*
* -
*
* paused
*
*
* -
*
* rebooting
*
*
* -
*
* renaming
*
*
* -
*
* resizing
*
*
* -
*
* rotating-keys
*
*
* -
*
* storage-full
*
*
* -
*
* updating-hsm
*
*
*
*
* @param clusterStatus
* The current state of the cluster. Possible values are the following:
*
* -
*
* available
*
*
* -
*
* available, prep-for-resize
*
*
* -
*
* available, resize-cleanup
*
*
* -
*
* cancelling-resize
*
*
* -
*
* creating
*
*
* -
*
* deleting
*
*
* -
*
* final-snapshot
*
*
* -
*
* hardware-failure
*
*
* -
*
* incompatible-hsm
*
*
* -
*
* incompatible-network
*
*
* -
*
* incompatible-parameters
*
*
* -
*
* incompatible-restore
*
*
* -
*
* modifying
*
*
* -
*
* paused
*
*
* -
*
* rebooting
*
*
* -
*
* renaming
*
*
* -
*
* resizing
*
*
* -
*
* rotating-keys
*
*
* -
*
* storage-full
*
*
* -
*
* updating-hsm
*
*
*/
public void setClusterStatus(String clusterStatus) {
this.clusterStatus = clusterStatus;
}
/**
*
* The current state of the cluster. Possible values are the following:
*
*
* -
*
* available
*
*
* -
*
* available, prep-for-resize
*
*
* -
*
* available, resize-cleanup
*
*
* -
*
* cancelling-resize
*
*
* -
*
* creating
*
*
* -
*
* deleting
*
*
* -
*
* final-snapshot
*
*
* -
*
* hardware-failure
*
*
* -
*
* incompatible-hsm
*
*
* -
*
* incompatible-network
*
*
* -
*
* incompatible-parameters
*
*
* -
*
* incompatible-restore
*
*
* -
*
* modifying
*
*
* -
*
* paused
*
*
* -
*
* rebooting
*
*
* -
*
* renaming
*
*
* -
*
* resizing
*
*
* -
*
* rotating-keys
*
*
* -
*
* storage-full
*
*
* -
*
* updating-hsm
*
*
*
*
* @return The current state of the cluster. Possible values are the following:
*
* -
*
* available
*
*
* -
*
* available, prep-for-resize
*
*
* -
*
* available, resize-cleanup
*
*
* -
*
* cancelling-resize
*
*
* -
*
* creating
*
*
* -
*
* deleting
*
*
* -
*
* final-snapshot
*
*
* -
*
* hardware-failure
*
*
* -
*
* incompatible-hsm
*
*
* -
*
* incompatible-network
*
*
* -
*
* incompatible-parameters
*
*
* -
*
* incompatible-restore
*
*
* -
*
* modifying
*
*
* -
*
* paused
*
*
* -
*
* rebooting
*
*
* -
*
* renaming
*
*
* -
*
* resizing
*
*
* -
*
* rotating-keys
*
*
* -
*
* storage-full
*
*
* -
*
* updating-hsm
*
*
*/
public String getClusterStatus() {
return this.clusterStatus;
}
/**
*
* The current state of the cluster. Possible values are the following:
*
*
* -
*
* available
*
*
* -
*
* available, prep-for-resize
*
*
* -
*
* available, resize-cleanup
*
*
* -
*
* cancelling-resize
*
*
* -
*
* creating
*
*
* -
*
* deleting
*
*
* -
*
* final-snapshot
*
*
* -
*
* hardware-failure
*
*
* -
*
* incompatible-hsm
*
*
* -
*
* incompatible-network
*
*
* -
*
* incompatible-parameters
*
*
* -
*
* incompatible-restore
*
*
* -
*
* modifying
*
*
* -
*
* paused
*
*
* -
*
* rebooting
*
*
* -
*
* renaming
*
*
* -
*
* resizing
*
*
* -
*
* rotating-keys
*
*
* -
*
* storage-full
*
*
* -
*
* updating-hsm
*
*
*
*
* @param clusterStatus
* The current state of the cluster. Possible values are the following:
*
* -
*
* available
*
*
* -
*
* available, prep-for-resize
*
*
* -
*
* available, resize-cleanup
*
*
* -
*
* cancelling-resize
*
*
* -
*
* creating
*
*
* -
*
* deleting
*
*
* -
*
* final-snapshot
*
*
* -
*
* hardware-failure
*
*
* -
*
* incompatible-hsm
*
*
* -
*
* incompatible-network
*
*
* -
*
* incompatible-parameters
*
*
* -
*
* incompatible-restore
*
*
* -
*
* modifying
*
*
* -
*
* paused
*
*
* -
*
* rebooting
*
*
* -
*
* renaming
*
*
* -
*
* resizing
*
*
* -
*
* rotating-keys
*
*
* -
*
* storage-full
*
*
* -
*
* updating-hsm
*
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterStatus(String clusterStatus) {
setClusterStatus(clusterStatus);
return this;
}
/**
*
* The availability status of the cluster for queries. Possible values are the following:
*
*
* -
*
* Available - The cluster is available for queries.
*
*
* -
*
* Unavailable - The cluster is not available for queries.
*
*
* -
*
* Maintenance - The cluster is intermittently available for queries due to maintenance activities.
*
*
* -
*
* Modifying - The cluster is intermittently available for queries due to changes that modify the cluster.
*
*
* -
*
* Failed - The cluster failed and is not available for queries.
*
*
*
*
* @param clusterAvailabilityStatus
* The availability status of the cluster for queries. Possible values are the following:
*
* -
*
* Available - The cluster is available for queries.
*
*
* -
*
* Unavailable - The cluster is not available for queries.
*
*
* -
*
* Maintenance - The cluster is intermittently available for queries due to maintenance activities.
*
*
* -
*
* Modifying - The cluster is intermittently available for queries due to changes that modify the cluster.
*
*
* -
*
* Failed - The cluster failed and is not available for queries.
*
*
*/
public void setClusterAvailabilityStatus(String clusterAvailabilityStatus) {
this.clusterAvailabilityStatus = clusterAvailabilityStatus;
}
/**
*
* The availability status of the cluster for queries. Possible values are the following:
*
*
* -
*
* Available - The cluster is available for queries.
*
*
* -
*
* Unavailable - The cluster is not available for queries.
*
*
* -
*
* Maintenance - The cluster is intermittently available for queries due to maintenance activities.
*
*
* -
*
* Modifying - The cluster is intermittently available for queries due to changes that modify the cluster.
*
*
* -
*
* Failed - The cluster failed and is not available for queries.
*
*
*
*
* @return The availability status of the cluster for queries. Possible values are the following:
*
* -
*
* Available - The cluster is available for queries.
*
*
* -
*
* Unavailable - The cluster is not available for queries.
*
*
* -
*
* Maintenance - The cluster is intermittently available for queries due to maintenance activities.
*
*
* -
*
* Modifying - The cluster is intermittently available for queries due to changes that modify the cluster.
*
*
* -
*
* Failed - The cluster failed and is not available for queries.
*
*
*/
public String getClusterAvailabilityStatus() {
return this.clusterAvailabilityStatus;
}
/**
*
* The availability status of the cluster for queries. Possible values are the following:
*
*
* -
*
* Available - The cluster is available for queries.
*
*
* -
*
* Unavailable - The cluster is not available for queries.
*
*
* -
*
* Maintenance - The cluster is intermittently available for queries due to maintenance activities.
*
*
* -
*
* Modifying - The cluster is intermittently available for queries due to changes that modify the cluster.
*
*
* -
*
* Failed - The cluster failed and is not available for queries.
*
*
*
*
* @param clusterAvailabilityStatus
* The availability status of the cluster for queries. Possible values are the following:
*
* -
*
* Available - The cluster is available for queries.
*
*
* -
*
* Unavailable - The cluster is not available for queries.
*
*
* -
*
* Maintenance - The cluster is intermittently available for queries due to maintenance activities.
*
*
* -
*
* Modifying - The cluster is intermittently available for queries due to changes that modify the cluster.
*
*
* -
*
* Failed - The cluster failed and is not available for queries.
*
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterAvailabilityStatus(String clusterAvailabilityStatus) {
setClusterAvailabilityStatus(clusterAvailabilityStatus);
return this;
}
/**
*
* The status of a modify operation, if any, initiated for the cluster.
*
*
* @param modifyStatus
* The status of a modify operation, if any, initiated for the cluster.
*/
public void setModifyStatus(String modifyStatus) {
this.modifyStatus = modifyStatus;
}
/**
*
* The status of a modify operation, if any, initiated for the cluster.
*
*
* @return The status of a modify operation, if any, initiated for the cluster.
*/
public String getModifyStatus() {
return this.modifyStatus;
}
/**
*
* The status of a modify operation, if any, initiated for the cluster.
*
*
* @param modifyStatus
* The status of a modify operation, if any, initiated for the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withModifyStatus(String modifyStatus) {
setModifyStatus(modifyStatus);
return this;
}
/**
*
* The admin user name for the cluster. This name is used to connect to the database that is specified in the
* DBName parameter.
*
*
* @param masterUsername
* The admin user name for the cluster. This name is used to connect to the database that is specified in the
* DBName parameter.
*/
public void setMasterUsername(String masterUsername) {
this.masterUsername = masterUsername;
}
/**
*
* The admin user name for the cluster. This name is used to connect to the database that is specified in the
* DBName parameter.
*
*
* @return The admin user name for the cluster. This name is used to connect to the database that is specified in
* the DBName parameter.
*/
public String getMasterUsername() {
return this.masterUsername;
}
/**
*
* The admin user name for the cluster. This name is used to connect to the database that is specified in the
* DBName parameter.
*
*
* @param masterUsername
* The admin user name for the cluster. This name is used to connect to the database that is specified in the
* DBName parameter.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withMasterUsername(String masterUsername) {
setMasterUsername(masterUsername);
return this;
}
/**
*
* The name of the initial database that was created when the cluster was created. This same name is returned for
* the life of the cluster. If an initial database was not specified, a database named dev
dev was
* created by default.
*
*
* @param dBName
* The name of the initial database that was created when the cluster was created. This same name is returned
* for the life of the cluster. If an initial database was not specified, a database named dev
* dev was created by default.
*/
public void setDBName(String dBName) {
this.dBName = dBName;
}
/**
*
* The name of the initial database that was created when the cluster was created. This same name is returned for
* the life of the cluster. If an initial database was not specified, a database named dev
dev was
* created by default.
*
*
* @return The name of the initial database that was created when the cluster was created. This same name is
* returned for the life of the cluster. If an initial database was not specified, a database named
* dev
dev was created by default.
*/
public String getDBName() {
return this.dBName;
}
/**
*
* The name of the initial database that was created when the cluster was created. This same name is returned for
* the life of the cluster. If an initial database was not specified, a database named dev
dev was
* created by default.
*
*
* @param dBName
* The name of the initial database that was created when the cluster was created. This same name is returned
* for the life of the cluster. If an initial database was not specified, a database named dev
* dev was created by default.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withDBName(String dBName) {
setDBName(dBName);
return this;
}
/**
*
* The connection endpoint.
*
*
* @param endpoint
* The connection endpoint.
*/
public void setEndpoint(Endpoint endpoint) {
this.endpoint = endpoint;
}
/**
*
* The connection endpoint.
*
*
* @return The connection endpoint.
*/
public Endpoint getEndpoint() {
return this.endpoint;
}
/**
*
* The connection endpoint.
*
*
* @param endpoint
* The connection endpoint.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withEndpoint(Endpoint endpoint) {
setEndpoint(endpoint);
return this;
}
/**
*
* The date and time that the cluster was created.
*
*
* @param clusterCreateTime
* The date and time that the cluster was created.
*/
public void setClusterCreateTime(java.util.Date clusterCreateTime) {
this.clusterCreateTime = clusterCreateTime;
}
/**
*
* The date and time that the cluster was created.
*
*
* @return The date and time that the cluster was created.
*/
public java.util.Date getClusterCreateTime() {
return this.clusterCreateTime;
}
/**
*
* The date and time that the cluster was created.
*
*
* @param clusterCreateTime
* The date and time that the cluster was created.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterCreateTime(java.util.Date clusterCreateTime) {
setClusterCreateTime(clusterCreateTime);
return this;
}
/**
*
* The number of days that automatic cluster snapshots are retained.
*
*
* @param automatedSnapshotRetentionPeriod
* The number of days that automatic cluster snapshots are retained.
*/
public void setAutomatedSnapshotRetentionPeriod(Integer automatedSnapshotRetentionPeriod) {
this.automatedSnapshotRetentionPeriod = automatedSnapshotRetentionPeriod;
}
/**
*
* The number of days that automatic cluster snapshots are retained.
*
*
* @return The number of days that automatic cluster snapshots are retained.
*/
public Integer getAutomatedSnapshotRetentionPeriod() {
return this.automatedSnapshotRetentionPeriod;
}
/**
*
* The number of days that automatic cluster snapshots are retained.
*
*
* @param automatedSnapshotRetentionPeriod
* The number of days that automatic cluster snapshots are retained.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withAutomatedSnapshotRetentionPeriod(Integer automatedSnapshotRetentionPeriod) {
setAutomatedSnapshotRetentionPeriod(automatedSnapshotRetentionPeriod);
return this;
}
/**
*
* The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained
* indefinitely. This setting doesn't change the retention period of existing snapshots.
*
*
* The value must be either -1 or an integer between 1 and 3,653.
*
*
* @param manualSnapshotRetentionPeriod
* The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained
* indefinitely. This setting doesn't change the retention period of existing snapshots.
*
* The value must be either -1 or an integer between 1 and 3,653.
*/
public void setManualSnapshotRetentionPeriod(Integer manualSnapshotRetentionPeriod) {
this.manualSnapshotRetentionPeriod = manualSnapshotRetentionPeriod;
}
/**
*
* The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained
* indefinitely. This setting doesn't change the retention period of existing snapshots.
*
*
* The value must be either -1 or an integer between 1 and 3,653.
*
*
* @return The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained
* indefinitely. This setting doesn't change the retention period of existing snapshots.
*
* The value must be either -1 or an integer between 1 and 3,653.
*/
public Integer getManualSnapshotRetentionPeriod() {
return this.manualSnapshotRetentionPeriod;
}
/**
*
* The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained
* indefinitely. This setting doesn't change the retention period of existing snapshots.
*
*
* The value must be either -1 or an integer between 1 and 3,653.
*
*
* @param manualSnapshotRetentionPeriod
* The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained
* indefinitely. This setting doesn't change the retention period of existing snapshots.
*
* The value must be either -1 or an integer between 1 and 3,653.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withManualSnapshotRetentionPeriod(Integer manualSnapshotRetentionPeriod) {
setManualSnapshotRetentionPeriod(manualSnapshotRetentionPeriod);
return this;
}
/**
*
* A list of cluster security group that are associated with the cluster. Each security group is represented by an
* element that contains ClusterSecurityGroup.Name
and ClusterSecurityGroup.Status
* subelements.
*
*
* Cluster security groups are used when the cluster is not created in an Amazon Virtual Private Cloud (VPC).
* Clusters that are created in a VPC use VPC security groups, which are listed by the VpcSecurityGroups
* parameter.
*
*
* @return A list of cluster security group that are associated with the cluster. Each security group is represented
* by an element that contains ClusterSecurityGroup.Name
and
* ClusterSecurityGroup.Status
subelements.
*
* Cluster security groups are used when the cluster is not created in an Amazon Virtual Private Cloud
* (VPC). Clusters that are created in a VPC use VPC security groups, which are listed by the
* VpcSecurityGroups parameter.
*/
public java.util.List getClusterSecurityGroups() {
if (clusterSecurityGroups == null) {
clusterSecurityGroups = new com.amazonaws.internal.SdkInternalList();
}
return clusterSecurityGroups;
}
/**
*
* A list of cluster security group that are associated with the cluster. Each security group is represented by an
* element that contains ClusterSecurityGroup.Name
and ClusterSecurityGroup.Status
* subelements.
*
*
* Cluster security groups are used when the cluster is not created in an Amazon Virtual Private Cloud (VPC).
* Clusters that are created in a VPC use VPC security groups, which are listed by the VpcSecurityGroups
* parameter.
*
*
* @param clusterSecurityGroups
* A list of cluster security group that are associated with the cluster. Each security group is represented
* by an element that contains ClusterSecurityGroup.Name
and
* ClusterSecurityGroup.Status
subelements.
*
* Cluster security groups are used when the cluster is not created in an Amazon Virtual Private Cloud (VPC).
* Clusters that are created in a VPC use VPC security groups, which are listed by the
* VpcSecurityGroups parameter.
*/
public void setClusterSecurityGroups(java.util.Collection clusterSecurityGroups) {
if (clusterSecurityGroups == null) {
this.clusterSecurityGroups = null;
return;
}
this.clusterSecurityGroups = new com.amazonaws.internal.SdkInternalList(clusterSecurityGroups);
}
/**
*
* A list of cluster security group that are associated with the cluster. Each security group is represented by an
* element that contains ClusterSecurityGroup.Name
and ClusterSecurityGroup.Status
* subelements.
*
*
* Cluster security groups are used when the cluster is not created in an Amazon Virtual Private Cloud (VPC).
* Clusters that are created in a VPC use VPC security groups, which are listed by the VpcSecurityGroups
* parameter.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setClusterSecurityGroups(java.util.Collection)} or
* {@link #withClusterSecurityGroups(java.util.Collection)} if you want to override the existing values.
*
*
* @param clusterSecurityGroups
* A list of cluster security group that are associated with the cluster. Each security group is represented
* by an element that contains ClusterSecurityGroup.Name
and
* ClusterSecurityGroup.Status
subelements.
*
* Cluster security groups are used when the cluster is not created in an Amazon Virtual Private Cloud (VPC).
* Clusters that are created in a VPC use VPC security groups, which are listed by the
* VpcSecurityGroups parameter.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterSecurityGroups(ClusterSecurityGroupMembership... clusterSecurityGroups) {
if (this.clusterSecurityGroups == null) {
setClusterSecurityGroups(new com.amazonaws.internal.SdkInternalList(clusterSecurityGroups.length));
}
for (ClusterSecurityGroupMembership ele : clusterSecurityGroups) {
this.clusterSecurityGroups.add(ele);
}
return this;
}
/**
*
* A list of cluster security group that are associated with the cluster. Each security group is represented by an
* element that contains ClusterSecurityGroup.Name
and ClusterSecurityGroup.Status
* subelements.
*
*
* Cluster security groups are used when the cluster is not created in an Amazon Virtual Private Cloud (VPC).
* Clusters that are created in a VPC use VPC security groups, which are listed by the VpcSecurityGroups
* parameter.
*
*
* @param clusterSecurityGroups
* A list of cluster security group that are associated with the cluster. Each security group is represented
* by an element that contains ClusterSecurityGroup.Name
and
* ClusterSecurityGroup.Status
subelements.
*
* Cluster security groups are used when the cluster is not created in an Amazon Virtual Private Cloud (VPC).
* Clusters that are created in a VPC use VPC security groups, which are listed by the
* VpcSecurityGroups parameter.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterSecurityGroups(java.util.Collection clusterSecurityGroups) {
setClusterSecurityGroups(clusterSecurityGroups);
return this;
}
/**
*
* A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that are associated with the cluster. This
* parameter is returned only if the cluster is in a VPC.
*
*
* @return A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that are associated with the cluster.
* This parameter is returned only if the cluster is in a VPC.
*/
public java.util.List getVpcSecurityGroups() {
if (vpcSecurityGroups == null) {
vpcSecurityGroups = new com.amazonaws.internal.SdkInternalList();
}
return vpcSecurityGroups;
}
/**
*
* A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that are associated with the cluster. This
* parameter is returned only if the cluster is in a VPC.
*
*
* @param vpcSecurityGroups
* A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that are associated with the cluster.
* This parameter is returned only if the cluster is in a VPC.
*/
public void setVpcSecurityGroups(java.util.Collection vpcSecurityGroups) {
if (vpcSecurityGroups == null) {
this.vpcSecurityGroups = null;
return;
}
this.vpcSecurityGroups = new com.amazonaws.internal.SdkInternalList(vpcSecurityGroups);
}
/**
*
* A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that are associated with the cluster. This
* parameter is returned only if the cluster is in a VPC.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setVpcSecurityGroups(java.util.Collection)} or {@link #withVpcSecurityGroups(java.util.Collection)} if
* you want to override the existing values.
*
*
* @param vpcSecurityGroups
* A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that are associated with the cluster.
* This parameter is returned only if the cluster is in a VPC.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withVpcSecurityGroups(VpcSecurityGroupMembership... vpcSecurityGroups) {
if (this.vpcSecurityGroups == null) {
setVpcSecurityGroups(new com.amazonaws.internal.SdkInternalList(vpcSecurityGroups.length));
}
for (VpcSecurityGroupMembership ele : vpcSecurityGroups) {
this.vpcSecurityGroups.add(ele);
}
return this;
}
/**
*
* A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that are associated with the cluster. This
* parameter is returned only if the cluster is in a VPC.
*
*
* @param vpcSecurityGroups
* A list of Amazon Virtual Private Cloud (Amazon VPC) security groups that are associated with the cluster.
* This parameter is returned only if the cluster is in a VPC.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withVpcSecurityGroups(java.util.Collection vpcSecurityGroups) {
setVpcSecurityGroups(vpcSecurityGroups);
return this;
}
/**
*
* The list of cluster parameter groups that are associated with this cluster. Each parameter group in the list is
* returned with its status.
*
*
* @return The list of cluster parameter groups that are associated with this cluster. Each parameter group in the
* list is returned with its status.
*/
public java.util.List getClusterParameterGroups() {
if (clusterParameterGroups == null) {
clusterParameterGroups = new com.amazonaws.internal.SdkInternalList();
}
return clusterParameterGroups;
}
/**
*
* The list of cluster parameter groups that are associated with this cluster. Each parameter group in the list is
* returned with its status.
*
*
* @param clusterParameterGroups
* The list of cluster parameter groups that are associated with this cluster. Each parameter group in the
* list is returned with its status.
*/
public void setClusterParameterGroups(java.util.Collection clusterParameterGroups) {
if (clusterParameterGroups == null) {
this.clusterParameterGroups = null;
return;
}
this.clusterParameterGroups = new com.amazonaws.internal.SdkInternalList(clusterParameterGroups);
}
/**
*
* The list of cluster parameter groups that are associated with this cluster. Each parameter group in the list is
* returned with its status.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setClusterParameterGroups(java.util.Collection)} or
* {@link #withClusterParameterGroups(java.util.Collection)} if you want to override the existing values.
*
*
* @param clusterParameterGroups
* The list of cluster parameter groups that are associated with this cluster. Each parameter group in the
* list is returned with its status.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterParameterGroups(ClusterParameterGroupStatus... clusterParameterGroups) {
if (this.clusterParameterGroups == null) {
setClusterParameterGroups(new com.amazonaws.internal.SdkInternalList(clusterParameterGroups.length));
}
for (ClusterParameterGroupStatus ele : clusterParameterGroups) {
this.clusterParameterGroups.add(ele);
}
return this;
}
/**
*
* The list of cluster parameter groups that are associated with this cluster. Each parameter group in the list is
* returned with its status.
*
*
* @param clusterParameterGroups
* The list of cluster parameter groups that are associated with this cluster. Each parameter group in the
* list is returned with its status.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterParameterGroups(java.util.Collection clusterParameterGroups) {
setClusterParameterGroups(clusterParameterGroups);
return this;
}
/**
*
* The name of the subnet group that is associated with the cluster. This parameter is valid only when the cluster
* is in a VPC.
*
*
* @param clusterSubnetGroupName
* The name of the subnet group that is associated with the cluster. This parameter is valid only when the
* cluster is in a VPC.
*/
public void setClusterSubnetGroupName(String clusterSubnetGroupName) {
this.clusterSubnetGroupName = clusterSubnetGroupName;
}
/**
*
* The name of the subnet group that is associated with the cluster. This parameter is valid only when the cluster
* is in a VPC.
*
*
* @return The name of the subnet group that is associated with the cluster. This parameter is valid only when the
* cluster is in a VPC.
*/
public String getClusterSubnetGroupName() {
return this.clusterSubnetGroupName;
}
/**
*
* The name of the subnet group that is associated with the cluster. This parameter is valid only when the cluster
* is in a VPC.
*
*
* @param clusterSubnetGroupName
* The name of the subnet group that is associated with the cluster. This parameter is valid only when the
* cluster is in a VPC.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterSubnetGroupName(String clusterSubnetGroupName) {
setClusterSubnetGroupName(clusterSubnetGroupName);
return this;
}
/**
*
* The identifier of the VPC the cluster is in, if the cluster is in a VPC.
*
*
* @param vpcId
* The identifier of the VPC the cluster is in, if the cluster is in a VPC.
*/
public void setVpcId(String vpcId) {
this.vpcId = vpcId;
}
/**
*
* The identifier of the VPC the cluster is in, if the cluster is in a VPC.
*
*
* @return The identifier of the VPC the cluster is in, if the cluster is in a VPC.
*/
public String getVpcId() {
return this.vpcId;
}
/**
*
* The identifier of the VPC the cluster is in, if the cluster is in a VPC.
*
*
* @param vpcId
* The identifier of the VPC the cluster is in, if the cluster is in a VPC.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withVpcId(String vpcId) {
setVpcId(vpcId);
return this;
}
/**
*
* The name of the Availability Zone in which the cluster is located.
*
*
* @param availabilityZone
* The name of the Availability Zone in which the cluster is located.
*/
public void setAvailabilityZone(String availabilityZone) {
this.availabilityZone = availabilityZone;
}
/**
*
* The name of the Availability Zone in which the cluster is located.
*
*
* @return The name of the Availability Zone in which the cluster is located.
*/
public String getAvailabilityZone() {
return this.availabilityZone;
}
/**
*
* The name of the Availability Zone in which the cluster is located.
*
*
* @param availabilityZone
* The name of the Availability Zone in which the cluster is located.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withAvailabilityZone(String availabilityZone) {
setAvailabilityZone(availabilityZone);
return this;
}
/**
*
* The weekly time range, in Universal Coordinated Time (UTC), during which system maintenance can occur.
*
*
* @param preferredMaintenanceWindow
* The weekly time range, in Universal Coordinated Time (UTC), during which system maintenance can occur.
*/
public void setPreferredMaintenanceWindow(String preferredMaintenanceWindow) {
this.preferredMaintenanceWindow = preferredMaintenanceWindow;
}
/**
*
* The weekly time range, in Universal Coordinated Time (UTC), during which system maintenance can occur.
*
*
* @return The weekly time range, in Universal Coordinated Time (UTC), during which system maintenance can occur.
*/
public String getPreferredMaintenanceWindow() {
return this.preferredMaintenanceWindow;
}
/**
*
* The weekly time range, in Universal Coordinated Time (UTC), during which system maintenance can occur.
*
*
* @param preferredMaintenanceWindow
* The weekly time range, in Universal Coordinated Time (UTC), during which system maintenance can occur.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withPreferredMaintenanceWindow(String preferredMaintenanceWindow) {
setPreferredMaintenanceWindow(preferredMaintenanceWindow);
return this;
}
/**
*
* A value that, if present, indicates that changes to the cluster are pending. Specific pending changes are
* identified by subelements.
*
*
* @param pendingModifiedValues
* A value that, if present, indicates that changes to the cluster are pending. Specific pending changes are
* identified by subelements.
*/
public void setPendingModifiedValues(PendingModifiedValues pendingModifiedValues) {
this.pendingModifiedValues = pendingModifiedValues;
}
/**
*
* A value that, if present, indicates that changes to the cluster are pending. Specific pending changes are
* identified by subelements.
*
*
* @return A value that, if present, indicates that changes to the cluster are pending. Specific pending changes are
* identified by subelements.
*/
public PendingModifiedValues getPendingModifiedValues() {
return this.pendingModifiedValues;
}
/**
*
* A value that, if present, indicates that changes to the cluster are pending. Specific pending changes are
* identified by subelements.
*
*
* @param pendingModifiedValues
* A value that, if present, indicates that changes to the cluster are pending. Specific pending changes are
* identified by subelements.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withPendingModifiedValues(PendingModifiedValues pendingModifiedValues) {
setPendingModifiedValues(pendingModifiedValues);
return this;
}
/**
*
* The version ID of the Amazon Redshift engine that is running on the cluster.
*
*
* @param clusterVersion
* The version ID of the Amazon Redshift engine that is running on the cluster.
*/
public void setClusterVersion(String clusterVersion) {
this.clusterVersion = clusterVersion;
}
/**
*
* The version ID of the Amazon Redshift engine that is running on the cluster.
*
*
* @return The version ID of the Amazon Redshift engine that is running on the cluster.
*/
public String getClusterVersion() {
return this.clusterVersion;
}
/**
*
* The version ID of the Amazon Redshift engine that is running on the cluster.
*
*
* @param clusterVersion
* The version ID of the Amazon Redshift engine that is running on the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterVersion(String clusterVersion) {
setClusterVersion(clusterVersion);
return this;
}
/**
*
* A boolean value that, if true
, indicates that major version upgrades will be applied automatically
* to the cluster during the maintenance window.
*
*
* @param allowVersionUpgrade
* A boolean value that, if true
, indicates that major version upgrades will be applied
* automatically to the cluster during the maintenance window.
*/
public void setAllowVersionUpgrade(Boolean allowVersionUpgrade) {
this.allowVersionUpgrade = allowVersionUpgrade;
}
/**
*
* A boolean value that, if true
, indicates that major version upgrades will be applied automatically
* to the cluster during the maintenance window.
*
*
* @return A boolean value that, if true
, indicates that major version upgrades will be applied
* automatically to the cluster during the maintenance window.
*/
public Boolean getAllowVersionUpgrade() {
return this.allowVersionUpgrade;
}
/**
*
* A boolean value that, if true
, indicates that major version upgrades will be applied automatically
* to the cluster during the maintenance window.
*
*
* @param allowVersionUpgrade
* A boolean value that, if true
, indicates that major version upgrades will be applied
* automatically to the cluster during the maintenance window.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withAllowVersionUpgrade(Boolean allowVersionUpgrade) {
setAllowVersionUpgrade(allowVersionUpgrade);
return this;
}
/**
*
* A boolean value that, if true
, indicates that major version upgrades will be applied automatically
* to the cluster during the maintenance window.
*
*
* @return A boolean value that, if true
, indicates that major version upgrades will be applied
* automatically to the cluster during the maintenance window.
*/
public Boolean isAllowVersionUpgrade() {
return this.allowVersionUpgrade;
}
/**
*
* The number of compute nodes in the cluster.
*
*
* @param numberOfNodes
* The number of compute nodes in the cluster.
*/
public void setNumberOfNodes(Integer numberOfNodes) {
this.numberOfNodes = numberOfNodes;
}
/**
*
* The number of compute nodes in the cluster.
*
*
* @return The number of compute nodes in the cluster.
*/
public Integer getNumberOfNodes() {
return this.numberOfNodes;
}
/**
*
* The number of compute nodes in the cluster.
*
*
* @param numberOfNodes
* The number of compute nodes in the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withNumberOfNodes(Integer numberOfNodes) {
setNumberOfNodes(numberOfNodes);
return this;
}
/**
*
* A boolean value that, if true
, indicates that the cluster can be accessed from a public network.
*
*
* @param publiclyAccessible
* A boolean value that, if true
, indicates that the cluster can be accessed from a public
* network.
*/
public void setPubliclyAccessible(Boolean publiclyAccessible) {
this.publiclyAccessible = publiclyAccessible;
}
/**
*
* A boolean value that, if true
, indicates that the cluster can be accessed from a public network.
*
*
* @return A boolean value that, if true
, indicates that the cluster can be accessed from a public
* network.
*/
public Boolean getPubliclyAccessible() {
return this.publiclyAccessible;
}
/**
*
* A boolean value that, if true
, indicates that the cluster can be accessed from a public network.
*
*
* @param publiclyAccessible
* A boolean value that, if true
, indicates that the cluster can be accessed from a public
* network.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withPubliclyAccessible(Boolean publiclyAccessible) {
setPubliclyAccessible(publiclyAccessible);
return this;
}
/**
*
* A boolean value that, if true
, indicates that the cluster can be accessed from a public network.
*
*
* @return A boolean value that, if true
, indicates that the cluster can be accessed from a public
* network.
*/
public Boolean isPubliclyAccessible() {
return this.publiclyAccessible;
}
/**
*
* A boolean value that, if true
, indicates that data in the cluster is encrypted at rest.
*
*
* @param encrypted
* A boolean value that, if true
, indicates that data in the cluster is encrypted at rest.
*/
public void setEncrypted(Boolean encrypted) {
this.encrypted = encrypted;
}
/**
*
* A boolean value that, if true
, indicates that data in the cluster is encrypted at rest.
*
*
* @return A boolean value that, if true
, indicates that data in the cluster is encrypted at rest.
*/
public Boolean getEncrypted() {
return this.encrypted;
}
/**
*
* A boolean value that, if true
, indicates that data in the cluster is encrypted at rest.
*
*
* @param encrypted
* A boolean value that, if true
, indicates that data in the cluster is encrypted at rest.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withEncrypted(Boolean encrypted) {
setEncrypted(encrypted);
return this;
}
/**
*
* A boolean value that, if true
, indicates that data in the cluster is encrypted at rest.
*
*
* @return A boolean value that, if true
, indicates that data in the cluster is encrypted at rest.
*/
public Boolean isEncrypted() {
return this.encrypted;
}
/**
*
* A value that describes the status of a cluster restore action. This parameter returns null if the cluster was not
* created by restoring a snapshot.
*
*
* @param restoreStatus
* A value that describes the status of a cluster restore action. This parameter returns null if the cluster
* was not created by restoring a snapshot.
*/
public void setRestoreStatus(RestoreStatus restoreStatus) {
this.restoreStatus = restoreStatus;
}
/**
*
* A value that describes the status of a cluster restore action. This parameter returns null if the cluster was not
* created by restoring a snapshot.
*
*
* @return A value that describes the status of a cluster restore action. This parameter returns null if the cluster
* was not created by restoring a snapshot.
*/
public RestoreStatus getRestoreStatus() {
return this.restoreStatus;
}
/**
*
* A value that describes the status of a cluster restore action. This parameter returns null if the cluster was not
* created by restoring a snapshot.
*
*
* @param restoreStatus
* A value that describes the status of a cluster restore action. This parameter returns null if the cluster
* was not created by restoring a snapshot.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withRestoreStatus(RestoreStatus restoreStatus) {
setRestoreStatus(restoreStatus);
return this;
}
/**
*
*
* @param dataTransferProgress
*/
public void setDataTransferProgress(DataTransferProgress dataTransferProgress) {
this.dataTransferProgress = dataTransferProgress;
}
/**
*
*
* @return
*/
public DataTransferProgress getDataTransferProgress() {
return this.dataTransferProgress;
}
/**
*
*
* @param dataTransferProgress
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withDataTransferProgress(DataTransferProgress dataTransferProgress) {
setDataTransferProgress(dataTransferProgress);
return this;
}
/**
*
* A value that reports whether the Amazon Redshift cluster has finished applying any hardware security module (HSM)
* settings changes specified in a modify cluster command.
*
*
* Values: active, applying
*
*
* @param hsmStatus
* A value that reports whether the Amazon Redshift cluster has finished applying any hardware security
* module (HSM) settings changes specified in a modify cluster command.
*
* Values: active, applying
*/
public void setHsmStatus(HsmStatus hsmStatus) {
this.hsmStatus = hsmStatus;
}
/**
*
* A value that reports whether the Amazon Redshift cluster has finished applying any hardware security module (HSM)
* settings changes specified in a modify cluster command.
*
*
* Values: active, applying
*
*
* @return A value that reports whether the Amazon Redshift cluster has finished applying any hardware security
* module (HSM) settings changes specified in a modify cluster command.
*
* Values: active, applying
*/
public HsmStatus getHsmStatus() {
return this.hsmStatus;
}
/**
*
* A value that reports whether the Amazon Redshift cluster has finished applying any hardware security module (HSM)
* settings changes specified in a modify cluster command.
*
*
* Values: active, applying
*
*
* @param hsmStatus
* A value that reports whether the Amazon Redshift cluster has finished applying any hardware security
* module (HSM) settings changes specified in a modify cluster command.
*
* Values: active, applying
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withHsmStatus(HsmStatus hsmStatus) {
setHsmStatus(hsmStatus);
return this;
}
/**
*
* A value that returns the destination region and retention period that are configured for cross-region snapshot
* copy.
*
*
* @param clusterSnapshotCopyStatus
* A value that returns the destination region and retention period that are configured for cross-region
* snapshot copy.
*/
public void setClusterSnapshotCopyStatus(ClusterSnapshotCopyStatus clusterSnapshotCopyStatus) {
this.clusterSnapshotCopyStatus = clusterSnapshotCopyStatus;
}
/**
*
* A value that returns the destination region and retention period that are configured for cross-region snapshot
* copy.
*
*
* @return A value that returns the destination region and retention period that are configured for cross-region
* snapshot copy.
*/
public ClusterSnapshotCopyStatus getClusterSnapshotCopyStatus() {
return this.clusterSnapshotCopyStatus;
}
/**
*
* A value that returns the destination region and retention period that are configured for cross-region snapshot
* copy.
*
*
* @param clusterSnapshotCopyStatus
* A value that returns the destination region and retention period that are configured for cross-region
* snapshot copy.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterSnapshotCopyStatus(ClusterSnapshotCopyStatus clusterSnapshotCopyStatus) {
setClusterSnapshotCopyStatus(clusterSnapshotCopyStatus);
return this;
}
/**
*
* The public key for the cluster.
*
*
* @param clusterPublicKey
* The public key for the cluster.
*/
public void setClusterPublicKey(String clusterPublicKey) {
this.clusterPublicKey = clusterPublicKey;
}
/**
*
* The public key for the cluster.
*
*
* @return The public key for the cluster.
*/
public String getClusterPublicKey() {
return this.clusterPublicKey;
}
/**
*
* The public key for the cluster.
*
*
* @param clusterPublicKey
* The public key for the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterPublicKey(String clusterPublicKey) {
setClusterPublicKey(clusterPublicKey);
return this;
}
/**
*
* The nodes in the cluster.
*
*
* @return The nodes in the cluster.
*/
public java.util.List getClusterNodes() {
if (clusterNodes == null) {
clusterNodes = new com.amazonaws.internal.SdkInternalList();
}
return clusterNodes;
}
/**
*
* The nodes in the cluster.
*
*
* @param clusterNodes
* The nodes in the cluster.
*/
public void setClusterNodes(java.util.Collection clusterNodes) {
if (clusterNodes == null) {
this.clusterNodes = null;
return;
}
this.clusterNodes = new com.amazonaws.internal.SdkInternalList(clusterNodes);
}
/**
*
* The nodes in the cluster.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setClusterNodes(java.util.Collection)} or {@link #withClusterNodes(java.util.Collection)} if you want to
* override the existing values.
*
*
* @param clusterNodes
* The nodes in the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterNodes(ClusterNode... clusterNodes) {
if (this.clusterNodes == null) {
setClusterNodes(new com.amazonaws.internal.SdkInternalList(clusterNodes.length));
}
for (ClusterNode ele : clusterNodes) {
this.clusterNodes.add(ele);
}
return this;
}
/**
*
* The nodes in the cluster.
*
*
* @param clusterNodes
* The nodes in the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterNodes(java.util.Collection clusterNodes) {
setClusterNodes(clusterNodes);
return this;
}
/**
*
* The status of the elastic IP (EIP) address.
*
*
* @param elasticIpStatus
* The status of the elastic IP (EIP) address.
*/
public void setElasticIpStatus(ElasticIpStatus elasticIpStatus) {
this.elasticIpStatus = elasticIpStatus;
}
/**
*
* The status of the elastic IP (EIP) address.
*
*
* @return The status of the elastic IP (EIP) address.
*/
public ElasticIpStatus getElasticIpStatus() {
return this.elasticIpStatus;
}
/**
*
* The status of the elastic IP (EIP) address.
*
*
* @param elasticIpStatus
* The status of the elastic IP (EIP) address.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withElasticIpStatus(ElasticIpStatus elasticIpStatus) {
setElasticIpStatus(elasticIpStatus);
return this;
}
/**
*
* The specific revision number of the database in the cluster.
*
*
* @param clusterRevisionNumber
* The specific revision number of the database in the cluster.
*/
public void setClusterRevisionNumber(String clusterRevisionNumber) {
this.clusterRevisionNumber = clusterRevisionNumber;
}
/**
*
* The specific revision number of the database in the cluster.
*
*
* @return The specific revision number of the database in the cluster.
*/
public String getClusterRevisionNumber() {
return this.clusterRevisionNumber;
}
/**
*
* The specific revision number of the database in the cluster.
*
*
* @param clusterRevisionNumber
* The specific revision number of the database in the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterRevisionNumber(String clusterRevisionNumber) {
setClusterRevisionNumber(clusterRevisionNumber);
return this;
}
/**
*
* The list of tags for the cluster.
*
*
* @return The list of tags for the cluster.
*/
public java.util.List getTags() {
if (tags == null) {
tags = new com.amazonaws.internal.SdkInternalList();
}
return tags;
}
/**
*
* The list of tags for the cluster.
*
*
* @param tags
* The list of tags for the cluster.
*/
public void setTags(java.util.Collection tags) {
if (tags == null) {
this.tags = null;
return;
}
this.tags = new com.amazonaws.internal.SdkInternalList(tags);
}
/**
*
* The list of tags for the cluster.
*
*
* 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 list of tags for the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withTags(Tag... tags) {
if (this.tags == null) {
setTags(new com.amazonaws.internal.SdkInternalList(tags.length));
}
for (Tag ele : tags) {
this.tags.add(ele);
}
return this;
}
/**
*
* The list of tags for the cluster.
*
*
* @param tags
* The list of tags for the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withTags(java.util.Collection tags) {
setTags(tags);
return this;
}
/**
*
* The Key Management Service (KMS) key ID of the encryption key used to encrypt data in the cluster.
*
*
* @param kmsKeyId
* The Key Management Service (KMS) key ID of the encryption key used to encrypt data in the cluster.
*/
public void setKmsKeyId(String kmsKeyId) {
this.kmsKeyId = kmsKeyId;
}
/**
*
* The Key Management Service (KMS) key ID of the encryption key used to encrypt data in the cluster.
*
*
* @return The Key Management Service (KMS) key ID of the encryption key used to encrypt data in the cluster.
*/
public String getKmsKeyId() {
return this.kmsKeyId;
}
/**
*
* The Key Management Service (KMS) key ID of the encryption key used to encrypt data in the cluster.
*
*
* @param kmsKeyId
* The Key Management Service (KMS) key ID of the encryption key used to encrypt data in the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withKmsKeyId(String kmsKeyId) {
setKmsKeyId(kmsKeyId);
return this;
}
/**
*
* An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster
* that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the
* Amazon Redshift Cluster Management Guide.
*
*
* If this option is true
, enhanced VPC routing is enabled.
*
*
* Default: false
*
*
* @param enhancedVpcRouting
* An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a
* cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing
* in the Amazon Redshift Cluster Management Guide.
*
* If this option is true
, enhanced VPC routing is enabled.
*
*
* Default: false
*/
public void setEnhancedVpcRouting(Boolean enhancedVpcRouting) {
this.enhancedVpcRouting = enhancedVpcRouting;
}
/**
*
* An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster
* that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the
* Amazon Redshift Cluster Management Guide.
*
*
* If this option is true
, enhanced VPC routing is enabled.
*
*
* Default: false
*
*
* @return An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a
* cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC
* Routing in the Amazon Redshift Cluster Management Guide.
*
* If this option is true
, enhanced VPC routing is enabled.
*
*
* Default: false
*/
public Boolean getEnhancedVpcRouting() {
return this.enhancedVpcRouting;
}
/**
*
* An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster
* that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the
* Amazon Redshift Cluster Management Guide.
*
*
* If this option is true
, enhanced VPC routing is enabled.
*
*
* Default: false
*
*
* @param enhancedVpcRouting
* An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a
* cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing
* in the Amazon Redshift Cluster Management Guide.
*
* If this option is true
, enhanced VPC routing is enabled.
*
*
* Default: false
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withEnhancedVpcRouting(Boolean enhancedVpcRouting) {
setEnhancedVpcRouting(enhancedVpcRouting);
return this;
}
/**
*
* An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster
* that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the
* Amazon Redshift Cluster Management Guide.
*
*
* If this option is true
, enhanced VPC routing is enabled.
*
*
* Default: false
*
*
* @return An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a
* cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC
* Routing in the Amazon Redshift Cluster Management Guide.
*
* If this option is true
, enhanced VPC routing is enabled.
*
*
* Default: false
*/
public Boolean isEnhancedVpcRouting() {
return this.enhancedVpcRouting;
}
/**
*
* A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other Amazon Web
* Services services.
*
*
* @return A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other
* Amazon Web Services services.
*/
public java.util.List getIamRoles() {
if (iamRoles == null) {
iamRoles = new com.amazonaws.internal.SdkInternalList();
}
return iamRoles;
}
/**
*
* A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other Amazon Web
* Services services.
*
*
* @param iamRoles
* A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other
* Amazon Web Services services.
*/
public void setIamRoles(java.util.Collection iamRoles) {
if (iamRoles == null) {
this.iamRoles = null;
return;
}
this.iamRoles = new com.amazonaws.internal.SdkInternalList(iamRoles);
}
/**
*
* A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other Amazon Web
* Services services.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setIamRoles(java.util.Collection)} or {@link #withIamRoles(java.util.Collection)} if you want to override
* the existing values.
*
*
* @param iamRoles
* A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other
* Amazon Web Services services.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withIamRoles(ClusterIamRole... iamRoles) {
if (this.iamRoles == null) {
setIamRoles(new com.amazonaws.internal.SdkInternalList(iamRoles.length));
}
for (ClusterIamRole ele : iamRoles) {
this.iamRoles.add(ele);
}
return this;
}
/**
*
* A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other Amazon Web
* Services services.
*
*
* @param iamRoles
* A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other
* Amazon Web Services services.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withIamRoles(java.util.Collection iamRoles) {
setIamRoles(iamRoles);
return this;
}
/**
*
* Cluster operations that are waiting to be started.
*
*
* @return Cluster operations that are waiting to be started.
*/
public java.util.List getPendingActions() {
if (pendingActions == null) {
pendingActions = new com.amazonaws.internal.SdkInternalList();
}
return pendingActions;
}
/**
*
* Cluster operations that are waiting to be started.
*
*
* @param pendingActions
* Cluster operations that are waiting to be started.
*/
public void setPendingActions(java.util.Collection pendingActions) {
if (pendingActions == null) {
this.pendingActions = null;
return;
}
this.pendingActions = new com.amazonaws.internal.SdkInternalList(pendingActions);
}
/**
*
* Cluster operations that are waiting to be started.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setPendingActions(java.util.Collection)} or {@link #withPendingActions(java.util.Collection)} if you want
* to override the existing values.
*
*
* @param pendingActions
* Cluster operations that are waiting to be started.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withPendingActions(String... pendingActions) {
if (this.pendingActions == null) {
setPendingActions(new com.amazonaws.internal.SdkInternalList(pendingActions.length));
}
for (String ele : pendingActions) {
this.pendingActions.add(ele);
}
return this;
}
/**
*
* Cluster operations that are waiting to be started.
*
*
* @param pendingActions
* Cluster operations that are waiting to be started.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withPendingActions(java.util.Collection pendingActions) {
setPendingActions(pendingActions);
return this;
}
/**
*
* The name of the maintenance track for the cluster.
*
*
* @param maintenanceTrackName
* The name of the maintenance track for the cluster.
*/
public void setMaintenanceTrackName(String maintenanceTrackName) {
this.maintenanceTrackName = maintenanceTrackName;
}
/**
*
* The name of the maintenance track for the cluster.
*
*
* @return The name of the maintenance track for the cluster.
*/
public String getMaintenanceTrackName() {
return this.maintenanceTrackName;
}
/**
*
* The name of the maintenance track for the cluster.
*
*
* @param maintenanceTrackName
* The name of the maintenance track for the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withMaintenanceTrackName(String maintenanceTrackName) {
setMaintenanceTrackName(maintenanceTrackName);
return this;
}
/**
*
* The number of nodes that you can resize the cluster to with the elastic resize method.
*
*
* @param elasticResizeNumberOfNodeOptions
* The number of nodes that you can resize the cluster to with the elastic resize method.
*/
public void setElasticResizeNumberOfNodeOptions(String elasticResizeNumberOfNodeOptions) {
this.elasticResizeNumberOfNodeOptions = elasticResizeNumberOfNodeOptions;
}
/**
*
* The number of nodes that you can resize the cluster to with the elastic resize method.
*
*
* @return The number of nodes that you can resize the cluster to with the elastic resize method.
*/
public String getElasticResizeNumberOfNodeOptions() {
return this.elasticResizeNumberOfNodeOptions;
}
/**
*
* The number of nodes that you can resize the cluster to with the elastic resize method.
*
*
* @param elasticResizeNumberOfNodeOptions
* The number of nodes that you can resize the cluster to with the elastic resize method.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withElasticResizeNumberOfNodeOptions(String elasticResizeNumberOfNodeOptions) {
setElasticResizeNumberOfNodeOptions(elasticResizeNumberOfNodeOptions);
return this;
}
/**
*
* Describes a group of DeferredMaintenanceWindow
objects.
*
*
* @return Describes a group of DeferredMaintenanceWindow
objects.
*/
public java.util.List getDeferredMaintenanceWindows() {
if (deferredMaintenanceWindows == null) {
deferredMaintenanceWindows = new com.amazonaws.internal.SdkInternalList();
}
return deferredMaintenanceWindows;
}
/**
*
* Describes a group of DeferredMaintenanceWindow
objects.
*
*
* @param deferredMaintenanceWindows
* Describes a group of DeferredMaintenanceWindow
objects.
*/
public void setDeferredMaintenanceWindows(java.util.Collection deferredMaintenanceWindows) {
if (deferredMaintenanceWindows == null) {
this.deferredMaintenanceWindows = null;
return;
}
this.deferredMaintenanceWindows = new com.amazonaws.internal.SdkInternalList(deferredMaintenanceWindows);
}
/**
*
* Describes a group of DeferredMaintenanceWindow
objects.
*
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setDeferredMaintenanceWindows(java.util.Collection)} or
* {@link #withDeferredMaintenanceWindows(java.util.Collection)} if you want to override the existing values.
*
*
* @param deferredMaintenanceWindows
* Describes a group of DeferredMaintenanceWindow
objects.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withDeferredMaintenanceWindows(DeferredMaintenanceWindow... deferredMaintenanceWindows) {
if (this.deferredMaintenanceWindows == null) {
setDeferredMaintenanceWindows(new com.amazonaws.internal.SdkInternalList(deferredMaintenanceWindows.length));
}
for (DeferredMaintenanceWindow ele : deferredMaintenanceWindows) {
this.deferredMaintenanceWindows.add(ele);
}
return this;
}
/**
*
* Describes a group of DeferredMaintenanceWindow
objects.
*
*
* @param deferredMaintenanceWindows
* Describes a group of DeferredMaintenanceWindow
objects.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withDeferredMaintenanceWindows(java.util.Collection deferredMaintenanceWindows) {
setDeferredMaintenanceWindows(deferredMaintenanceWindows);
return this;
}
/**
*
* A unique identifier for the cluster snapshot schedule.
*
*
* @param snapshotScheduleIdentifier
* A unique identifier for the cluster snapshot schedule.
*/
public void setSnapshotScheduleIdentifier(String snapshotScheduleIdentifier) {
this.snapshotScheduleIdentifier = snapshotScheduleIdentifier;
}
/**
*
* A unique identifier for the cluster snapshot schedule.
*
*
* @return A unique identifier for the cluster snapshot schedule.
*/
public String getSnapshotScheduleIdentifier() {
return this.snapshotScheduleIdentifier;
}
/**
*
* A unique identifier for the cluster snapshot schedule.
*
*
* @param snapshotScheduleIdentifier
* A unique identifier for the cluster snapshot schedule.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withSnapshotScheduleIdentifier(String snapshotScheduleIdentifier) {
setSnapshotScheduleIdentifier(snapshotScheduleIdentifier);
return this;
}
/**
*
* The current state of the cluster snapshot schedule.
*
*
* @param snapshotScheduleState
* The current state of the cluster snapshot schedule.
* @see ScheduleState
*/
public void setSnapshotScheduleState(String snapshotScheduleState) {
this.snapshotScheduleState = snapshotScheduleState;
}
/**
*
* The current state of the cluster snapshot schedule.
*
*
* @return The current state of the cluster snapshot schedule.
* @see ScheduleState
*/
public String getSnapshotScheduleState() {
return this.snapshotScheduleState;
}
/**
*
* The current state of the cluster snapshot schedule.
*
*
* @param snapshotScheduleState
* The current state of the cluster snapshot schedule.
* @return Returns a reference to this object so that method calls can be chained together.
* @see ScheduleState
*/
public Cluster withSnapshotScheduleState(String snapshotScheduleState) {
setSnapshotScheduleState(snapshotScheduleState);
return this;
}
/**
*
* The current state of the cluster snapshot schedule.
*
*
* @param snapshotScheduleState
* The current state of the cluster snapshot schedule.
* @return Returns a reference to this object so that method calls can be chained together.
* @see ScheduleState
*/
public Cluster withSnapshotScheduleState(ScheduleState snapshotScheduleState) {
this.snapshotScheduleState = snapshotScheduleState.toString();
return this;
}
/**
*
* The date and time when the next snapshot is expected to be taken for clusters with a valid snapshot schedule and
* backups enabled.
*
*
* @param expectedNextSnapshotScheduleTime
* The date and time when the next snapshot is expected to be taken for clusters with a valid snapshot
* schedule and backups enabled.
*/
public void setExpectedNextSnapshotScheduleTime(java.util.Date expectedNextSnapshotScheduleTime) {
this.expectedNextSnapshotScheduleTime = expectedNextSnapshotScheduleTime;
}
/**
*
* The date and time when the next snapshot is expected to be taken for clusters with a valid snapshot schedule and
* backups enabled.
*
*
* @return The date and time when the next snapshot is expected to be taken for clusters with a valid snapshot
* schedule and backups enabled.
*/
public java.util.Date getExpectedNextSnapshotScheduleTime() {
return this.expectedNextSnapshotScheduleTime;
}
/**
*
* The date and time when the next snapshot is expected to be taken for clusters with a valid snapshot schedule and
* backups enabled.
*
*
* @param expectedNextSnapshotScheduleTime
* The date and time when the next snapshot is expected to be taken for clusters with a valid snapshot
* schedule and backups enabled.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withExpectedNextSnapshotScheduleTime(java.util.Date expectedNextSnapshotScheduleTime) {
setExpectedNextSnapshotScheduleTime(expectedNextSnapshotScheduleTime);
return this;
}
/**
*
* The status of next expected snapshot for clusters having a valid snapshot schedule and backups enabled. Possible
* values are the following:
*
*
* -
*
* OnTrack - The next snapshot is expected to be taken on time.
*
*
* -
*
* Pending - The next snapshot is pending to be taken.
*
*
*
*
* @param expectedNextSnapshotScheduleTimeStatus
* The status of next expected snapshot for clusters having a valid snapshot schedule and backups enabled.
* Possible values are the following:
*
* -
*
* OnTrack - The next snapshot is expected to be taken on time.
*
*
* -
*
* Pending - The next snapshot is pending to be taken.
*
*
*/
public void setExpectedNextSnapshotScheduleTimeStatus(String expectedNextSnapshotScheduleTimeStatus) {
this.expectedNextSnapshotScheduleTimeStatus = expectedNextSnapshotScheduleTimeStatus;
}
/**
*
* The status of next expected snapshot for clusters having a valid snapshot schedule and backups enabled. Possible
* values are the following:
*
*
* -
*
* OnTrack - The next snapshot is expected to be taken on time.
*
*
* -
*
* Pending - The next snapshot is pending to be taken.
*
*
*
*
* @return The status of next expected snapshot for clusters having a valid snapshot schedule and backups enabled.
* Possible values are the following:
*
* -
*
* OnTrack - The next snapshot is expected to be taken on time.
*
*
* -
*
* Pending - The next snapshot is pending to be taken.
*
*
*/
public String getExpectedNextSnapshotScheduleTimeStatus() {
return this.expectedNextSnapshotScheduleTimeStatus;
}
/**
*
* The status of next expected snapshot for clusters having a valid snapshot schedule and backups enabled. Possible
* values are the following:
*
*
* -
*
* OnTrack - The next snapshot is expected to be taken on time.
*
*
* -
*
* Pending - The next snapshot is pending to be taken.
*
*
*
*
* @param expectedNextSnapshotScheduleTimeStatus
* The status of next expected snapshot for clusters having a valid snapshot schedule and backups enabled.
* Possible values are the following:
*
* -
*
* OnTrack - The next snapshot is expected to be taken on time.
*
*
* -
*
* Pending - The next snapshot is pending to be taken.
*
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withExpectedNextSnapshotScheduleTimeStatus(String expectedNextSnapshotScheduleTimeStatus) {
setExpectedNextSnapshotScheduleTimeStatus(expectedNextSnapshotScheduleTimeStatus);
return this;
}
/**
*
* The date and time in UTC when system maintenance can begin.
*
*
* @param nextMaintenanceWindowStartTime
* The date and time in UTC when system maintenance can begin.
*/
public void setNextMaintenanceWindowStartTime(java.util.Date nextMaintenanceWindowStartTime) {
this.nextMaintenanceWindowStartTime = nextMaintenanceWindowStartTime;
}
/**
*
* The date and time in UTC when system maintenance can begin.
*
*
* @return The date and time in UTC when system maintenance can begin.
*/
public java.util.Date getNextMaintenanceWindowStartTime() {
return this.nextMaintenanceWindowStartTime;
}
/**
*
* The date and time in UTC when system maintenance can begin.
*
*
* @param nextMaintenanceWindowStartTime
* The date and time in UTC when system maintenance can begin.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withNextMaintenanceWindowStartTime(java.util.Date nextMaintenanceWindowStartTime) {
setNextMaintenanceWindowStartTime(nextMaintenanceWindowStartTime);
return this;
}
/**
*
* Returns the following:
*
*
* -
*
* AllowCancelResize: a boolean value indicating if the resize operation can be cancelled.
*
*
* -
*
* ResizeType: Returns ClassicResize
*
*
*
*
* @param resizeInfo
* Returns the following:
*
* -
*
* AllowCancelResize: a boolean value indicating if the resize operation can be cancelled.
*
*
* -
*
* ResizeType: Returns ClassicResize
*
*
*/
public void setResizeInfo(ResizeInfo resizeInfo) {
this.resizeInfo = resizeInfo;
}
/**
*
* Returns the following:
*
*
* -
*
* AllowCancelResize: a boolean value indicating if the resize operation can be cancelled.
*
*
* -
*
* ResizeType: Returns ClassicResize
*
*
*
*
* @return Returns the following:
*
* -
*
* AllowCancelResize: a boolean value indicating if the resize operation can be cancelled.
*
*
* -
*
* ResizeType: Returns ClassicResize
*
*
*/
public ResizeInfo getResizeInfo() {
return this.resizeInfo;
}
/**
*
* Returns the following:
*
*
* -
*
* AllowCancelResize: a boolean value indicating if the resize operation can be cancelled.
*
*
* -
*
* ResizeType: Returns ClassicResize
*
*
*
*
* @param resizeInfo
* Returns the following:
*
* -
*
* AllowCancelResize: a boolean value indicating if the resize operation can be cancelled.
*
*
* -
*
* ResizeType: Returns ClassicResize
*
*
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withResizeInfo(ResizeInfo resizeInfo) {
setResizeInfo(resizeInfo);
return this;
}
/**
*
* Describes the status of the Availability Zone relocation operation.
*
*
* @param availabilityZoneRelocationStatus
* Describes the status of the Availability Zone relocation operation.
*/
public void setAvailabilityZoneRelocationStatus(String availabilityZoneRelocationStatus) {
this.availabilityZoneRelocationStatus = availabilityZoneRelocationStatus;
}
/**
*
* Describes the status of the Availability Zone relocation operation.
*
*
* @return Describes the status of the Availability Zone relocation operation.
*/
public String getAvailabilityZoneRelocationStatus() {
return this.availabilityZoneRelocationStatus;
}
/**
*
* Describes the status of the Availability Zone relocation operation.
*
*
* @param availabilityZoneRelocationStatus
* Describes the status of the Availability Zone relocation operation.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withAvailabilityZoneRelocationStatus(String availabilityZoneRelocationStatus) {
setAvailabilityZoneRelocationStatus(availabilityZoneRelocationStatus);
return this;
}
/**
*
* The namespace Amazon Resource Name (ARN) of the cluster.
*
*
* @param clusterNamespaceArn
* The namespace Amazon Resource Name (ARN) of the cluster.
*/
public void setClusterNamespaceArn(String clusterNamespaceArn) {
this.clusterNamespaceArn = clusterNamespaceArn;
}
/**
*
* The namespace Amazon Resource Name (ARN) of the cluster.
*
*
* @return The namespace Amazon Resource Name (ARN) of the cluster.
*/
public String getClusterNamespaceArn() {
return this.clusterNamespaceArn;
}
/**
*
* The namespace Amazon Resource Name (ARN) of the cluster.
*
*
* @param clusterNamespaceArn
* The namespace Amazon Resource Name (ARN) of the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withClusterNamespaceArn(String clusterNamespaceArn) {
setClusterNamespaceArn(clusterNamespaceArn);
return this;
}
/**
*
* The total storage capacity of the cluster in megabytes.
*
*
* @param totalStorageCapacityInMegaBytes
* The total storage capacity of the cluster in megabytes.
*/
public void setTotalStorageCapacityInMegaBytes(Long totalStorageCapacityInMegaBytes) {
this.totalStorageCapacityInMegaBytes = totalStorageCapacityInMegaBytes;
}
/**
*
* The total storage capacity of the cluster in megabytes.
*
*
* @return The total storage capacity of the cluster in megabytes.
*/
public Long getTotalStorageCapacityInMegaBytes() {
return this.totalStorageCapacityInMegaBytes;
}
/**
*
* The total storage capacity of the cluster in megabytes.
*
*
* @param totalStorageCapacityInMegaBytes
* The total storage capacity of the cluster in megabytes.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withTotalStorageCapacityInMegaBytes(Long totalStorageCapacityInMegaBytes) {
setTotalStorageCapacityInMegaBytes(totalStorageCapacityInMegaBytes);
return this;
}
/**
*
* This field is retired. Amazon Redshift automatically determines whether to use AQUA (Advanced Query Accelerator).
*
*
* @param aquaConfiguration
* This field is retired. Amazon Redshift automatically determines whether to use AQUA (Advanced Query
* Accelerator).
*/
public void setAquaConfiguration(AquaConfiguration aquaConfiguration) {
this.aquaConfiguration = aquaConfiguration;
}
/**
*
* This field is retired. Amazon Redshift automatically determines whether to use AQUA (Advanced Query Accelerator).
*
*
* @return This field is retired. Amazon Redshift automatically determines whether to use AQUA (Advanced Query
* Accelerator).
*/
public AquaConfiguration getAquaConfiguration() {
return this.aquaConfiguration;
}
/**
*
* This field is retired. Amazon Redshift automatically determines whether to use AQUA (Advanced Query Accelerator).
*
*
* @param aquaConfiguration
* This field is retired. Amazon Redshift automatically determines whether to use AQUA (Advanced Query
* Accelerator).
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withAquaConfiguration(AquaConfiguration aquaConfiguration) {
setAquaConfiguration(aquaConfiguration);
return this;
}
/**
*
* The Amazon Resource Name (ARN) for the IAM role set as default for the cluster.
*
*
* @param defaultIamRoleArn
* The Amazon Resource Name (ARN) for the IAM role set as default for the cluster.
*/
public void setDefaultIamRoleArn(String defaultIamRoleArn) {
this.defaultIamRoleArn = defaultIamRoleArn;
}
/**
*
* The Amazon Resource Name (ARN) for the IAM role set as default for the cluster.
*
*
* @return The Amazon Resource Name (ARN) for the IAM role set as default for the cluster.
*/
public String getDefaultIamRoleArn() {
return this.defaultIamRoleArn;
}
/**
*
* The Amazon Resource Name (ARN) for the IAM role set as default for the cluster.
*
*
* @param defaultIamRoleArn
* The Amazon Resource Name (ARN) for the IAM role set as default for the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withDefaultIamRoleArn(String defaultIamRoleArn) {
setDefaultIamRoleArn(defaultIamRoleArn);
return this;
}
/**
*
* The status of the reserved-node exchange request. Statuses include in-progress and requested.
*
*
* @param reservedNodeExchangeStatus
* The status of the reserved-node exchange request. Statuses include in-progress and requested.
*/
public void setReservedNodeExchangeStatus(ReservedNodeExchangeStatus reservedNodeExchangeStatus) {
this.reservedNodeExchangeStatus = reservedNodeExchangeStatus;
}
/**
*
* The status of the reserved-node exchange request. Statuses include in-progress and requested.
*
*
* @return The status of the reserved-node exchange request. Statuses include in-progress and requested.
*/
public ReservedNodeExchangeStatus getReservedNodeExchangeStatus() {
return this.reservedNodeExchangeStatus;
}
/**
*
* The status of the reserved-node exchange request. Statuses include in-progress and requested.
*
*
* @param reservedNodeExchangeStatus
* The status of the reserved-node exchange request. Statuses include in-progress and requested.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withReservedNodeExchangeStatus(ReservedNodeExchangeStatus reservedNodeExchangeStatus) {
setReservedNodeExchangeStatus(reservedNodeExchangeStatus);
return this;
}
/**
*
* The custom domain name associated with the cluster.
*
*
* @param customDomainName
* The custom domain name associated with the cluster.
*/
public void setCustomDomainName(String customDomainName) {
this.customDomainName = customDomainName;
}
/**
*
* The custom domain name associated with the cluster.
*
*
* @return The custom domain name associated with the cluster.
*/
public String getCustomDomainName() {
return this.customDomainName;
}
/**
*
* The custom domain name associated with the cluster.
*
*
* @param customDomainName
* The custom domain name associated with the cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withCustomDomainName(String customDomainName) {
setCustomDomainName(customDomainName);
return this;
}
/**
*
* The certificate Amazon Resource Name (ARN) for the custom domain name.
*
*
* @param customDomainCertificateArn
* The certificate Amazon Resource Name (ARN) for the custom domain name.
*/
public void setCustomDomainCertificateArn(String customDomainCertificateArn) {
this.customDomainCertificateArn = customDomainCertificateArn;
}
/**
*
* The certificate Amazon Resource Name (ARN) for the custom domain name.
*
*
* @return The certificate Amazon Resource Name (ARN) for the custom domain name.
*/
public String getCustomDomainCertificateArn() {
return this.customDomainCertificateArn;
}
/**
*
* The certificate Amazon Resource Name (ARN) for the custom domain name.
*
*
* @param customDomainCertificateArn
* The certificate Amazon Resource Name (ARN) for the custom domain name.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withCustomDomainCertificateArn(String customDomainCertificateArn) {
setCustomDomainCertificateArn(customDomainCertificateArn);
return this;
}
/**
*
* The expiration date for the certificate associated with the custom domain name.
*
*
* @param customDomainCertificateExpiryDate
* The expiration date for the certificate associated with the custom domain name.
*/
public void setCustomDomainCertificateExpiryDate(java.util.Date customDomainCertificateExpiryDate) {
this.customDomainCertificateExpiryDate = customDomainCertificateExpiryDate;
}
/**
*
* The expiration date for the certificate associated with the custom domain name.
*
*
* @return The expiration date for the certificate associated with the custom domain name.
*/
public java.util.Date getCustomDomainCertificateExpiryDate() {
return this.customDomainCertificateExpiryDate;
}
/**
*
* The expiration date for the certificate associated with the custom domain name.
*
*
* @param customDomainCertificateExpiryDate
* The expiration date for the certificate associated with the custom domain name.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withCustomDomainCertificateExpiryDate(java.util.Date customDomainCertificateExpiryDate) {
setCustomDomainCertificateExpiryDate(customDomainCertificateExpiryDate);
return this;
}
/**
*
* The Amazon Resource Name (ARN) for the cluster's admin user credentials secret.
*
*
* @param masterPasswordSecretArn
* The Amazon Resource Name (ARN) for the cluster's admin user credentials secret.
*/
public void setMasterPasswordSecretArn(String masterPasswordSecretArn) {
this.masterPasswordSecretArn = masterPasswordSecretArn;
}
/**
*
* The Amazon Resource Name (ARN) for the cluster's admin user credentials secret.
*
*
* @return The Amazon Resource Name (ARN) for the cluster's admin user credentials secret.
*/
public String getMasterPasswordSecretArn() {
return this.masterPasswordSecretArn;
}
/**
*
* The Amazon Resource Name (ARN) for the cluster's admin user credentials secret.
*
*
* @param masterPasswordSecretArn
* The Amazon Resource Name (ARN) for the cluster's admin user credentials secret.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withMasterPasswordSecretArn(String masterPasswordSecretArn) {
setMasterPasswordSecretArn(masterPasswordSecretArn);
return this;
}
/**
*
* The ID of the Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials secret.
*
*
* @param masterPasswordSecretKmsKeyId
* The ID of the Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials
* secret.
*/
public void setMasterPasswordSecretKmsKeyId(String masterPasswordSecretKmsKeyId) {
this.masterPasswordSecretKmsKeyId = masterPasswordSecretKmsKeyId;
}
/**
*
* The ID of the Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials secret.
*
*
* @return The ID of the Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials
* secret.
*/
public String getMasterPasswordSecretKmsKeyId() {
return this.masterPasswordSecretKmsKeyId;
}
/**
*
* The ID of the Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials secret.
*
*
* @param masterPasswordSecretKmsKeyId
* The ID of the Key Management Service (KMS) key used to encrypt and store the cluster's admin credentials
* secret.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withMasterPasswordSecretKmsKeyId(String masterPasswordSecretKmsKeyId) {
setMasterPasswordSecretKmsKeyId(masterPasswordSecretKmsKeyId);
return this;
}
/**
*
* The IP address type for the cluster. Possible values are ipv4
and dualstack
.
*
*
* @param ipAddressType
* The IP address type for the cluster. Possible values are ipv4
and dualstack
.
*/
public void setIpAddressType(String ipAddressType) {
this.ipAddressType = ipAddressType;
}
/**
*
* The IP address type for the cluster. Possible values are ipv4
and dualstack
.
*
*
* @return The IP address type for the cluster. Possible values are ipv4
and dualstack
.
*/
public String getIpAddressType() {
return this.ipAddressType;
}
/**
*
* The IP address type for the cluster. Possible values are ipv4
and dualstack
.
*
*
* @param ipAddressType
* The IP address type for the cluster. Possible values are ipv4
and dualstack
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withIpAddressType(String ipAddressType) {
setIpAddressType(ipAddressType);
return this;
}
/**
*
* A boolean value that, if true, indicates that the cluster is deployed in two Availability Zones.
*
*
* @param multiAZ
* A boolean value that, if true, indicates that the cluster is deployed in two Availability Zones.
*/
public void setMultiAZ(String multiAZ) {
this.multiAZ = multiAZ;
}
/**
*
* A boolean value that, if true, indicates that the cluster is deployed in two Availability Zones.
*
*
* @return A boolean value that, if true, indicates that the cluster is deployed in two Availability Zones.
*/
public String getMultiAZ() {
return this.multiAZ;
}
/**
*
* A boolean value that, if true, indicates that the cluster is deployed in two Availability Zones.
*
*
* @param multiAZ
* A boolean value that, if true, indicates that the cluster is deployed in two Availability Zones.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withMultiAZ(String multiAZ) {
setMultiAZ(multiAZ);
return this;
}
/**
*
* The secondary compute unit of a cluster, if Multi-AZ deployment is turned on.
*
*
* @param multiAZSecondary
* The secondary compute unit of a cluster, if Multi-AZ deployment is turned on.
*/
public void setMultiAZSecondary(SecondaryClusterInfo multiAZSecondary) {
this.multiAZSecondary = multiAZSecondary;
}
/**
*
* The secondary compute unit of a cluster, if Multi-AZ deployment is turned on.
*
*
* @return The secondary compute unit of a cluster, if Multi-AZ deployment is turned on.
*/
public SecondaryClusterInfo getMultiAZSecondary() {
return this.multiAZSecondary;
}
/**
*
* The secondary compute unit of a cluster, if Multi-AZ deployment is turned on.
*
*
* @param multiAZSecondary
* The secondary compute unit of a cluster, if Multi-AZ deployment is turned on.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public Cluster withMultiAZSecondary(SecondaryClusterInfo multiAZSecondary) {
setMultiAZSecondary(multiAZSecondary);
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 (getClusterIdentifier() != null)
sb.append("ClusterIdentifier: ").append(getClusterIdentifier()).append(",");
if (getNodeType() != null)
sb.append("NodeType: ").append(getNodeType()).append(",");
if (getClusterStatus() != null)
sb.append("ClusterStatus: ").append(getClusterStatus()).append(",");
if (getClusterAvailabilityStatus() != null)
sb.append("ClusterAvailabilityStatus: ").append(getClusterAvailabilityStatus()).append(",");
if (getModifyStatus() != null)
sb.append("ModifyStatus: ").append(getModifyStatus()).append(",");
if (getMasterUsername() != null)
sb.append("MasterUsername: ").append(getMasterUsername()).append(",");
if (getDBName() != null)
sb.append("DBName: ").append(getDBName()).append(",");
if (getEndpoint() != null)
sb.append("Endpoint: ").append(getEndpoint()).append(",");
if (getClusterCreateTime() != null)
sb.append("ClusterCreateTime: ").append(getClusterCreateTime()).append(",");
if (getAutomatedSnapshotRetentionPeriod() != null)
sb.append("AutomatedSnapshotRetentionPeriod: ").append(getAutomatedSnapshotRetentionPeriod()).append(",");
if (getManualSnapshotRetentionPeriod() != null)
sb.append("ManualSnapshotRetentionPeriod: ").append(getManualSnapshotRetentionPeriod()).append(",");
if (getClusterSecurityGroups() != null)
sb.append("ClusterSecurityGroups: ").append(getClusterSecurityGroups()).append(",");
if (getVpcSecurityGroups() != null)
sb.append("VpcSecurityGroups: ").append(getVpcSecurityGroups()).append(",");
if (getClusterParameterGroups() != null)
sb.append("ClusterParameterGroups: ").append(getClusterParameterGroups()).append(",");
if (getClusterSubnetGroupName() != null)
sb.append("ClusterSubnetGroupName: ").append(getClusterSubnetGroupName()).append(",");
if (getVpcId() != null)
sb.append("VpcId: ").append(getVpcId()).append(",");
if (getAvailabilityZone() != null)
sb.append("AvailabilityZone: ").append(getAvailabilityZone()).append(",");
if (getPreferredMaintenanceWindow() != null)
sb.append("PreferredMaintenanceWindow: ").append(getPreferredMaintenanceWindow()).append(",");
if (getPendingModifiedValues() != null)
sb.append("PendingModifiedValues: ").append(getPendingModifiedValues()).append(",");
if (getClusterVersion() != null)
sb.append("ClusterVersion: ").append(getClusterVersion()).append(",");
if (getAllowVersionUpgrade() != null)
sb.append("AllowVersionUpgrade: ").append(getAllowVersionUpgrade()).append(",");
if (getNumberOfNodes() != null)
sb.append("NumberOfNodes: ").append(getNumberOfNodes()).append(",");
if (getPubliclyAccessible() != null)
sb.append("PubliclyAccessible: ").append(getPubliclyAccessible()).append(",");
if (getEncrypted() != null)
sb.append("Encrypted: ").append(getEncrypted()).append(",");
if (getRestoreStatus() != null)
sb.append("RestoreStatus: ").append(getRestoreStatus()).append(",");
if (getDataTransferProgress() != null)
sb.append("DataTransferProgress: ").append(getDataTransferProgress()).append(",");
if (getHsmStatus() != null)
sb.append("HsmStatus: ").append(getHsmStatus()).append(",");
if (getClusterSnapshotCopyStatus() != null)
sb.append("ClusterSnapshotCopyStatus: ").append(getClusterSnapshotCopyStatus()).append(",");
if (getClusterPublicKey() != null)
sb.append("ClusterPublicKey: ").append(getClusterPublicKey()).append(",");
if (getClusterNodes() != null)
sb.append("ClusterNodes: ").append(getClusterNodes()).append(",");
if (getElasticIpStatus() != null)
sb.append("ElasticIpStatus: ").append(getElasticIpStatus()).append(",");
if (getClusterRevisionNumber() != null)
sb.append("ClusterRevisionNumber: ").append(getClusterRevisionNumber()).append(",");
if (getTags() != null)
sb.append("Tags: ").append(getTags()).append(",");
if (getKmsKeyId() != null)
sb.append("KmsKeyId: ").append(getKmsKeyId()).append(",");
if (getEnhancedVpcRouting() != null)
sb.append("EnhancedVpcRouting: ").append(getEnhancedVpcRouting()).append(",");
if (getIamRoles() != null)
sb.append("IamRoles: ").append(getIamRoles()).append(",");
if (getPendingActions() != null)
sb.append("PendingActions: ").append(getPendingActions()).append(",");
if (getMaintenanceTrackName() != null)
sb.append("MaintenanceTrackName: ").append(getMaintenanceTrackName()).append(",");
if (getElasticResizeNumberOfNodeOptions() != null)
sb.append("ElasticResizeNumberOfNodeOptions: ").append(getElasticResizeNumberOfNodeOptions()).append(",");
if (getDeferredMaintenanceWindows() != null)
sb.append("DeferredMaintenanceWindows: ").append(getDeferredMaintenanceWindows()).append(",");
if (getSnapshotScheduleIdentifier() != null)
sb.append("SnapshotScheduleIdentifier: ").append(getSnapshotScheduleIdentifier()).append(",");
if (getSnapshotScheduleState() != null)
sb.append("SnapshotScheduleState: ").append(getSnapshotScheduleState()).append(",");
if (getExpectedNextSnapshotScheduleTime() != null)
sb.append("ExpectedNextSnapshotScheduleTime: ").append(getExpectedNextSnapshotScheduleTime()).append(",");
if (getExpectedNextSnapshotScheduleTimeStatus() != null)
sb.append("ExpectedNextSnapshotScheduleTimeStatus: ").append(getExpectedNextSnapshotScheduleTimeStatus()).append(",");
if (getNextMaintenanceWindowStartTime() != null)
sb.append("NextMaintenanceWindowStartTime: ").append(getNextMaintenanceWindowStartTime()).append(",");
if (getResizeInfo() != null)
sb.append("ResizeInfo: ").append(getResizeInfo()).append(",");
if (getAvailabilityZoneRelocationStatus() != null)
sb.append("AvailabilityZoneRelocationStatus: ").append(getAvailabilityZoneRelocationStatus()).append(",");
if (getClusterNamespaceArn() != null)
sb.append("ClusterNamespaceArn: ").append(getClusterNamespaceArn()).append(",");
if (getTotalStorageCapacityInMegaBytes() != null)
sb.append("TotalStorageCapacityInMegaBytes: ").append(getTotalStorageCapacityInMegaBytes()).append(",");
if (getAquaConfiguration() != null)
sb.append("AquaConfiguration: ").append(getAquaConfiguration()).append(",");
if (getDefaultIamRoleArn() != null)
sb.append("DefaultIamRoleArn: ").append(getDefaultIamRoleArn()).append(",");
if (getReservedNodeExchangeStatus() != null)
sb.append("ReservedNodeExchangeStatus: ").append(getReservedNodeExchangeStatus()).append(",");
if (getCustomDomainName() != null)
sb.append("CustomDomainName: ").append(getCustomDomainName()).append(",");
if (getCustomDomainCertificateArn() != null)
sb.append("CustomDomainCertificateArn: ").append(getCustomDomainCertificateArn()).append(",");
if (getCustomDomainCertificateExpiryDate() != null)
sb.append("CustomDomainCertificateExpiryDate: ").append(getCustomDomainCertificateExpiryDate()).append(",");
if (getMasterPasswordSecretArn() != null)
sb.append("MasterPasswordSecretArn: ").append(getMasterPasswordSecretArn()).append(",");
if (getMasterPasswordSecretKmsKeyId() != null)
sb.append("MasterPasswordSecretKmsKeyId: ").append(getMasterPasswordSecretKmsKeyId()).append(",");
if (getIpAddressType() != null)
sb.append("IpAddressType: ").append(getIpAddressType()).append(",");
if (getMultiAZ() != null)
sb.append("MultiAZ: ").append(getMultiAZ()).append(",");
if (getMultiAZSecondary() != null)
sb.append("MultiAZSecondary: ").append(getMultiAZSecondary());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof Cluster == false)
return false;
Cluster other = (Cluster) obj;
if (other.getClusterIdentifier() == null ^ this.getClusterIdentifier() == null)
return false;
if (other.getClusterIdentifier() != null && other.getClusterIdentifier().equals(this.getClusterIdentifier()) == false)
return false;
if (other.getNodeType() == null ^ this.getNodeType() == null)
return false;
if (other.getNodeType() != null && other.getNodeType().equals(this.getNodeType()) == false)
return false;
if (other.getClusterStatus() == null ^ this.getClusterStatus() == null)
return false;
if (other.getClusterStatus() != null && other.getClusterStatus().equals(this.getClusterStatus()) == false)
return false;
if (other.getClusterAvailabilityStatus() == null ^ this.getClusterAvailabilityStatus() == null)
return false;
if (other.getClusterAvailabilityStatus() != null && other.getClusterAvailabilityStatus().equals(this.getClusterAvailabilityStatus()) == false)
return false;
if (other.getModifyStatus() == null ^ this.getModifyStatus() == null)
return false;
if (other.getModifyStatus() != null && other.getModifyStatus().equals(this.getModifyStatus()) == false)
return false;
if (other.getMasterUsername() == null ^ this.getMasterUsername() == null)
return false;
if (other.getMasterUsername() != null && other.getMasterUsername().equals(this.getMasterUsername()) == false)
return false;
if (other.getDBName() == null ^ this.getDBName() == null)
return false;
if (other.getDBName() != null && other.getDBName().equals(this.getDBName()) == false)
return false;
if (other.getEndpoint() == null ^ this.getEndpoint() == null)
return false;
if (other.getEndpoint() != null && other.getEndpoint().equals(this.getEndpoint()) == false)
return false;
if (other.getClusterCreateTime() == null ^ this.getClusterCreateTime() == null)
return false;
if (other.getClusterCreateTime() != null && other.getClusterCreateTime().equals(this.getClusterCreateTime()) == false)
return false;
if (other.getAutomatedSnapshotRetentionPeriod() == null ^ this.getAutomatedSnapshotRetentionPeriod() == null)
return false;
if (other.getAutomatedSnapshotRetentionPeriod() != null
&& other.getAutomatedSnapshotRetentionPeriod().equals(this.getAutomatedSnapshotRetentionPeriod()) == false)
return false;
if (other.getManualSnapshotRetentionPeriod() == null ^ this.getManualSnapshotRetentionPeriod() == null)
return false;
if (other.getManualSnapshotRetentionPeriod() != null
&& other.getManualSnapshotRetentionPeriod().equals(this.getManualSnapshotRetentionPeriod()) == false)
return false;
if (other.getClusterSecurityGroups() == null ^ this.getClusterSecurityGroups() == null)
return false;
if (other.getClusterSecurityGroups() != null && other.getClusterSecurityGroups().equals(this.getClusterSecurityGroups()) == false)
return false;
if (other.getVpcSecurityGroups() == null ^ this.getVpcSecurityGroups() == null)
return false;
if (other.getVpcSecurityGroups() != null && other.getVpcSecurityGroups().equals(this.getVpcSecurityGroups()) == false)
return false;
if (other.getClusterParameterGroups() == null ^ this.getClusterParameterGroups() == null)
return false;
if (other.getClusterParameterGroups() != null && other.getClusterParameterGroups().equals(this.getClusterParameterGroups()) == false)
return false;
if (other.getClusterSubnetGroupName() == null ^ this.getClusterSubnetGroupName() == null)
return false;
if (other.getClusterSubnetGroupName() != null && other.getClusterSubnetGroupName().equals(this.getClusterSubnetGroupName()) == false)
return false;
if (other.getVpcId() == null ^ this.getVpcId() == null)
return false;
if (other.getVpcId() != null && other.getVpcId().equals(this.getVpcId()) == false)
return false;
if (other.getAvailabilityZone() == null ^ this.getAvailabilityZone() == null)
return false;
if (other.getAvailabilityZone() != null && other.getAvailabilityZone().equals(this.getAvailabilityZone()) == false)
return false;
if (other.getPreferredMaintenanceWindow() == null ^ this.getPreferredMaintenanceWindow() == null)
return false;
if (other.getPreferredMaintenanceWindow() != null && other.getPreferredMaintenanceWindow().equals(this.getPreferredMaintenanceWindow()) == false)
return false;
if (other.getPendingModifiedValues() == null ^ this.getPendingModifiedValues() == null)
return false;
if (other.getPendingModifiedValues() != null && other.getPendingModifiedValues().equals(this.getPendingModifiedValues()) == false)
return false;
if (other.getClusterVersion() == null ^ this.getClusterVersion() == null)
return false;
if (other.getClusterVersion() != null && other.getClusterVersion().equals(this.getClusterVersion()) == false)
return false;
if (other.getAllowVersionUpgrade() == null ^ this.getAllowVersionUpgrade() == null)
return false;
if (other.getAllowVersionUpgrade() != null && other.getAllowVersionUpgrade().equals(this.getAllowVersionUpgrade()) == false)
return false;
if (other.getNumberOfNodes() == null ^ this.getNumberOfNodes() == null)
return false;
if (other.getNumberOfNodes() != null && other.getNumberOfNodes().equals(this.getNumberOfNodes()) == false)
return false;
if (other.getPubliclyAccessible() == null ^ this.getPubliclyAccessible() == null)
return false;
if (other.getPubliclyAccessible() != null && other.getPubliclyAccessible().equals(this.getPubliclyAccessible()) == false)
return false;
if (other.getEncrypted() == null ^ this.getEncrypted() == null)
return false;
if (other.getEncrypted() != null && other.getEncrypted().equals(this.getEncrypted()) == false)
return false;
if (other.getRestoreStatus() == null ^ this.getRestoreStatus() == null)
return false;
if (other.getRestoreStatus() != null && other.getRestoreStatus().equals(this.getRestoreStatus()) == false)
return false;
if (other.getDataTransferProgress() == null ^ this.getDataTransferProgress() == null)
return false;
if (other.getDataTransferProgress() != null && other.getDataTransferProgress().equals(this.getDataTransferProgress()) == false)
return false;
if (other.getHsmStatus() == null ^ this.getHsmStatus() == null)
return false;
if (other.getHsmStatus() != null && other.getHsmStatus().equals(this.getHsmStatus()) == false)
return false;
if (other.getClusterSnapshotCopyStatus() == null ^ this.getClusterSnapshotCopyStatus() == null)
return false;
if (other.getClusterSnapshotCopyStatus() != null && other.getClusterSnapshotCopyStatus().equals(this.getClusterSnapshotCopyStatus()) == false)
return false;
if (other.getClusterPublicKey() == null ^ this.getClusterPublicKey() == null)
return false;
if (other.getClusterPublicKey() != null && other.getClusterPublicKey().equals(this.getClusterPublicKey()) == false)
return false;
if (other.getClusterNodes() == null ^ this.getClusterNodes() == null)
return false;
if (other.getClusterNodes() != null && other.getClusterNodes().equals(this.getClusterNodes()) == false)
return false;
if (other.getElasticIpStatus() == null ^ this.getElasticIpStatus() == null)
return false;
if (other.getElasticIpStatus() != null && other.getElasticIpStatus().equals(this.getElasticIpStatus()) == false)
return false;
if (other.getClusterRevisionNumber() == null ^ this.getClusterRevisionNumber() == null)
return false;
if (other.getClusterRevisionNumber() != null && other.getClusterRevisionNumber().equals(this.getClusterRevisionNumber()) == 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.getEnhancedVpcRouting() == null ^ this.getEnhancedVpcRouting() == null)
return false;
if (other.getEnhancedVpcRouting() != null && other.getEnhancedVpcRouting().equals(this.getEnhancedVpcRouting()) == false)
return false;
if (other.getIamRoles() == null ^ this.getIamRoles() == null)
return false;
if (other.getIamRoles() != null && other.getIamRoles().equals(this.getIamRoles()) == false)
return false;
if (other.getPendingActions() == null ^ this.getPendingActions() == null)
return false;
if (other.getPendingActions() != null && other.getPendingActions().equals(this.getPendingActions()) == false)
return false;
if (other.getMaintenanceTrackName() == null ^ this.getMaintenanceTrackName() == null)
return false;
if (other.getMaintenanceTrackName() != null && other.getMaintenanceTrackName().equals(this.getMaintenanceTrackName()) == false)
return false;
if (other.getElasticResizeNumberOfNodeOptions() == null ^ this.getElasticResizeNumberOfNodeOptions() == null)
return false;
if (other.getElasticResizeNumberOfNodeOptions() != null
&& other.getElasticResizeNumberOfNodeOptions().equals(this.getElasticResizeNumberOfNodeOptions()) == false)
return false;
if (other.getDeferredMaintenanceWindows() == null ^ this.getDeferredMaintenanceWindows() == null)
return false;
if (other.getDeferredMaintenanceWindows() != null && other.getDeferredMaintenanceWindows().equals(this.getDeferredMaintenanceWindows()) == false)
return false;
if (other.getSnapshotScheduleIdentifier() == null ^ this.getSnapshotScheduleIdentifier() == null)
return false;
if (other.getSnapshotScheduleIdentifier() != null && other.getSnapshotScheduleIdentifier().equals(this.getSnapshotScheduleIdentifier()) == false)
return false;
if (other.getSnapshotScheduleState() == null ^ this.getSnapshotScheduleState() == null)
return false;
if (other.getSnapshotScheduleState() != null && other.getSnapshotScheduleState().equals(this.getSnapshotScheduleState()) == false)
return false;
if (other.getExpectedNextSnapshotScheduleTime() == null ^ this.getExpectedNextSnapshotScheduleTime() == null)
return false;
if (other.getExpectedNextSnapshotScheduleTime() != null
&& other.getExpectedNextSnapshotScheduleTime().equals(this.getExpectedNextSnapshotScheduleTime()) == false)
return false;
if (other.getExpectedNextSnapshotScheduleTimeStatus() == null ^ this.getExpectedNextSnapshotScheduleTimeStatus() == null)
return false;
if (other.getExpectedNextSnapshotScheduleTimeStatus() != null
&& other.getExpectedNextSnapshotScheduleTimeStatus().equals(this.getExpectedNextSnapshotScheduleTimeStatus()) == false)
return false;
if (other.getNextMaintenanceWindowStartTime() == null ^ this.getNextMaintenanceWindowStartTime() == null)
return false;
if (other.getNextMaintenanceWindowStartTime() != null
&& other.getNextMaintenanceWindowStartTime().equals(this.getNextMaintenanceWindowStartTime()) == false)
return false;
if (other.getResizeInfo() == null ^ this.getResizeInfo() == null)
return false;
if (other.getResizeInfo() != null && other.getResizeInfo().equals(this.getResizeInfo()) == false)
return false;
if (other.getAvailabilityZoneRelocationStatus() == null ^ this.getAvailabilityZoneRelocationStatus() == null)
return false;
if (other.getAvailabilityZoneRelocationStatus() != null
&& other.getAvailabilityZoneRelocationStatus().equals(this.getAvailabilityZoneRelocationStatus()) == false)
return false;
if (other.getClusterNamespaceArn() == null ^ this.getClusterNamespaceArn() == null)
return false;
if (other.getClusterNamespaceArn() != null && other.getClusterNamespaceArn().equals(this.getClusterNamespaceArn()) == false)
return false;
if (other.getTotalStorageCapacityInMegaBytes() == null ^ this.getTotalStorageCapacityInMegaBytes() == null)
return false;
if (other.getTotalStorageCapacityInMegaBytes() != null
&& other.getTotalStorageCapacityInMegaBytes().equals(this.getTotalStorageCapacityInMegaBytes()) == false)
return false;
if (other.getAquaConfiguration() == null ^ this.getAquaConfiguration() == null)
return false;
if (other.getAquaConfiguration() != null && other.getAquaConfiguration().equals(this.getAquaConfiguration()) == false)
return false;
if (other.getDefaultIamRoleArn() == null ^ this.getDefaultIamRoleArn() == null)
return false;
if (other.getDefaultIamRoleArn() != null && other.getDefaultIamRoleArn().equals(this.getDefaultIamRoleArn()) == false)
return false;
if (other.getReservedNodeExchangeStatus() == null ^ this.getReservedNodeExchangeStatus() == null)
return false;
if (other.getReservedNodeExchangeStatus() != null && other.getReservedNodeExchangeStatus().equals(this.getReservedNodeExchangeStatus()) == false)
return false;
if (other.getCustomDomainName() == null ^ this.getCustomDomainName() == null)
return false;
if (other.getCustomDomainName() != null && other.getCustomDomainName().equals(this.getCustomDomainName()) == false)
return false;
if (other.getCustomDomainCertificateArn() == null ^ this.getCustomDomainCertificateArn() == null)
return false;
if (other.getCustomDomainCertificateArn() != null && other.getCustomDomainCertificateArn().equals(this.getCustomDomainCertificateArn()) == false)
return false;
if (other.getCustomDomainCertificateExpiryDate() == null ^ this.getCustomDomainCertificateExpiryDate() == null)
return false;
if (other.getCustomDomainCertificateExpiryDate() != null
&& other.getCustomDomainCertificateExpiryDate().equals(this.getCustomDomainCertificateExpiryDate()) == false)
return false;
if (other.getMasterPasswordSecretArn() == null ^ this.getMasterPasswordSecretArn() == null)
return false;
if (other.getMasterPasswordSecretArn() != null && other.getMasterPasswordSecretArn().equals(this.getMasterPasswordSecretArn()) == false)
return false;
if (other.getMasterPasswordSecretKmsKeyId() == null ^ this.getMasterPasswordSecretKmsKeyId() == null)
return false;
if (other.getMasterPasswordSecretKmsKeyId() != null && other.getMasterPasswordSecretKmsKeyId().equals(this.getMasterPasswordSecretKmsKeyId()) == false)
return false;
if (other.getIpAddressType() == null ^ this.getIpAddressType() == null)
return false;
if (other.getIpAddressType() != null && other.getIpAddressType().equals(this.getIpAddressType()) == false)
return false;
if (other.getMultiAZ() == null ^ this.getMultiAZ() == null)
return false;
if (other.getMultiAZ() != null && other.getMultiAZ().equals(this.getMultiAZ()) == false)
return false;
if (other.getMultiAZSecondary() == null ^ this.getMultiAZSecondary() == null)
return false;
if (other.getMultiAZSecondary() != null && other.getMultiAZSecondary().equals(this.getMultiAZSecondary()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getClusterIdentifier() == null) ? 0 : getClusterIdentifier().hashCode());
hashCode = prime * hashCode + ((getNodeType() == null) ? 0 : getNodeType().hashCode());
hashCode = prime * hashCode + ((getClusterStatus() == null) ? 0 : getClusterStatus().hashCode());
hashCode = prime * hashCode + ((getClusterAvailabilityStatus() == null) ? 0 : getClusterAvailabilityStatus().hashCode());
hashCode = prime * hashCode + ((getModifyStatus() == null) ? 0 : getModifyStatus().hashCode());
hashCode = prime * hashCode + ((getMasterUsername() == null) ? 0 : getMasterUsername().hashCode());
hashCode = prime * hashCode + ((getDBName() == null) ? 0 : getDBName().hashCode());
hashCode = prime * hashCode + ((getEndpoint() == null) ? 0 : getEndpoint().hashCode());
hashCode = prime * hashCode + ((getClusterCreateTime() == null) ? 0 : getClusterCreateTime().hashCode());
hashCode = prime * hashCode + ((getAutomatedSnapshotRetentionPeriod() == null) ? 0 : getAutomatedSnapshotRetentionPeriod().hashCode());
hashCode = prime * hashCode + ((getManualSnapshotRetentionPeriod() == null) ? 0 : getManualSnapshotRetentionPeriod().hashCode());
hashCode = prime * hashCode + ((getClusterSecurityGroups() == null) ? 0 : getClusterSecurityGroups().hashCode());
hashCode = prime * hashCode + ((getVpcSecurityGroups() == null) ? 0 : getVpcSecurityGroups().hashCode());
hashCode = prime * hashCode + ((getClusterParameterGroups() == null) ? 0 : getClusterParameterGroups().hashCode());
hashCode = prime * hashCode + ((getClusterSubnetGroupName() == null) ? 0 : getClusterSubnetGroupName().hashCode());
hashCode = prime * hashCode + ((getVpcId() == null) ? 0 : getVpcId().hashCode());
hashCode = prime * hashCode + ((getAvailabilityZone() == null) ? 0 : getAvailabilityZone().hashCode());
hashCode = prime * hashCode + ((getPreferredMaintenanceWindow() == null) ? 0 : getPreferredMaintenanceWindow().hashCode());
hashCode = prime * hashCode + ((getPendingModifiedValues() == null) ? 0 : getPendingModifiedValues().hashCode());
hashCode = prime * hashCode + ((getClusterVersion() == null) ? 0 : getClusterVersion().hashCode());
hashCode = prime * hashCode + ((getAllowVersionUpgrade() == null) ? 0 : getAllowVersionUpgrade().hashCode());
hashCode = prime * hashCode + ((getNumberOfNodes() == null) ? 0 : getNumberOfNodes().hashCode());
hashCode = prime * hashCode + ((getPubliclyAccessible() == null) ? 0 : getPubliclyAccessible().hashCode());
hashCode = prime * hashCode + ((getEncrypted() == null) ? 0 : getEncrypted().hashCode());
hashCode = prime * hashCode + ((getRestoreStatus() == null) ? 0 : getRestoreStatus().hashCode());
hashCode = prime * hashCode + ((getDataTransferProgress() == null) ? 0 : getDataTransferProgress().hashCode());
hashCode = prime * hashCode + ((getHsmStatus() == null) ? 0 : getHsmStatus().hashCode());
hashCode = prime * hashCode + ((getClusterSnapshotCopyStatus() == null) ? 0 : getClusterSnapshotCopyStatus().hashCode());
hashCode = prime * hashCode + ((getClusterPublicKey() == null) ? 0 : getClusterPublicKey().hashCode());
hashCode = prime * hashCode + ((getClusterNodes() == null) ? 0 : getClusterNodes().hashCode());
hashCode = prime * hashCode + ((getElasticIpStatus() == null) ? 0 : getElasticIpStatus().hashCode());
hashCode = prime * hashCode + ((getClusterRevisionNumber() == null) ? 0 : getClusterRevisionNumber().hashCode());
hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode());
hashCode = prime * hashCode + ((getKmsKeyId() == null) ? 0 : getKmsKeyId().hashCode());
hashCode = prime * hashCode + ((getEnhancedVpcRouting() == null) ? 0 : getEnhancedVpcRouting().hashCode());
hashCode = prime * hashCode + ((getIamRoles() == null) ? 0 : getIamRoles().hashCode());
hashCode = prime * hashCode + ((getPendingActions() == null) ? 0 : getPendingActions().hashCode());
hashCode = prime * hashCode + ((getMaintenanceTrackName() == null) ? 0 : getMaintenanceTrackName().hashCode());
hashCode = prime * hashCode + ((getElasticResizeNumberOfNodeOptions() == null) ? 0 : getElasticResizeNumberOfNodeOptions().hashCode());
hashCode = prime * hashCode + ((getDeferredMaintenanceWindows() == null) ? 0 : getDeferredMaintenanceWindows().hashCode());
hashCode = prime * hashCode + ((getSnapshotScheduleIdentifier() == null) ? 0 : getSnapshotScheduleIdentifier().hashCode());
hashCode = prime * hashCode + ((getSnapshotScheduleState() == null) ? 0 : getSnapshotScheduleState().hashCode());
hashCode = prime * hashCode + ((getExpectedNextSnapshotScheduleTime() == null) ? 0 : getExpectedNextSnapshotScheduleTime().hashCode());
hashCode = prime * hashCode + ((getExpectedNextSnapshotScheduleTimeStatus() == null) ? 0 : getExpectedNextSnapshotScheduleTimeStatus().hashCode());
hashCode = prime * hashCode + ((getNextMaintenanceWindowStartTime() == null) ? 0 : getNextMaintenanceWindowStartTime().hashCode());
hashCode = prime * hashCode + ((getResizeInfo() == null) ? 0 : getResizeInfo().hashCode());
hashCode = prime * hashCode + ((getAvailabilityZoneRelocationStatus() == null) ? 0 : getAvailabilityZoneRelocationStatus().hashCode());
hashCode = prime * hashCode + ((getClusterNamespaceArn() == null) ? 0 : getClusterNamespaceArn().hashCode());
hashCode = prime * hashCode + ((getTotalStorageCapacityInMegaBytes() == null) ? 0 : getTotalStorageCapacityInMegaBytes().hashCode());
hashCode = prime * hashCode + ((getAquaConfiguration() == null) ? 0 : getAquaConfiguration().hashCode());
hashCode = prime * hashCode + ((getDefaultIamRoleArn() == null) ? 0 : getDefaultIamRoleArn().hashCode());
hashCode = prime * hashCode + ((getReservedNodeExchangeStatus() == null) ? 0 : getReservedNodeExchangeStatus().hashCode());
hashCode = prime * hashCode + ((getCustomDomainName() == null) ? 0 : getCustomDomainName().hashCode());
hashCode = prime * hashCode + ((getCustomDomainCertificateArn() == null) ? 0 : getCustomDomainCertificateArn().hashCode());
hashCode = prime * hashCode + ((getCustomDomainCertificateExpiryDate() == null) ? 0 : getCustomDomainCertificateExpiryDate().hashCode());
hashCode = prime * hashCode + ((getMasterPasswordSecretArn() == null) ? 0 : getMasterPasswordSecretArn().hashCode());
hashCode = prime * hashCode + ((getMasterPasswordSecretKmsKeyId() == null) ? 0 : getMasterPasswordSecretKmsKeyId().hashCode());
hashCode = prime * hashCode + ((getIpAddressType() == null) ? 0 : getIpAddressType().hashCode());
hashCode = prime * hashCode + ((getMultiAZ() == null) ? 0 : getMultiAZ().hashCode());
hashCode = prime * hashCode + ((getMultiAZSecondary() == null) ? 0 : getMultiAZSecondary().hashCode());
return hashCode;
}
@Override
public Cluster clone() {
try {
return (Cluster) super.clone();
} catch (CloneNotSupportedException e) {
throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e);
}
}
}