com.amazonaws.services.redshift.model.Cluster Maven / Gradle / Ivy
Show all versions of aws-java-sdk-redshift Show documentation
/*
* Copyright 2010-2016 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;
/**
*
* Describes a cluster.
*
*/
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:
*
* available
* creating
* deleting
* final-snapshot
* hardware-failure
* incompatible-hsm
* incompatible-network
* incompatible-parameters
* incompatible-restore
* modifying
* rebooting
* renaming
* resizing
* rotating-keys
* storage-full
* updating-hsm
*
*
*/
private String clusterStatus;
/**
*
* The status of a modify operation, if any, initiated for the cluster.
*
*/
private String modifyStatus;
/**
*
* The master user name for the cluster. This name is used to connect to the
* database that is specified in DBName.
*
*/
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" 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;
/**
*
* 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 a
* 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 Virtual Private Cloud (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 UTC) during which system maintenance can occur.
*
*/
private String preferredMaintenanceWindow;
/**
*
* If present, 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;
/**
*
* If true
, 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;
/**
*
* If true
, the cluster can be accessed from a public network.
*
*/
private Boolean publiclyAccessible;
/**
*
* If true
, data in the cluster is encrypted at rest.
*
*/
private Boolean encrypted;
/**
*
* Describes the status of a cluster restore action. Returns null if the
* cluster was not created by restoring a snapshot.
*
*/
private RestoreStatus restoreStatus;
/**
*
* Reports whether the Amazon Redshift cluster has finished applying any HSM
* settings changes specified in a modify cluster command.
*
*
* Values: active, applying
*
*/
private HsmStatus hsmStatus;
/**
*
* 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 a 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 AWS Key Management Service (KMS) key ID of the encryption key used to
* encrypt data in the cluster.
*
*/
private String kmsKeyId;
/**
*
* A list of AWS Identity and Access Management (IAM) roles that can be used
* by the cluster to access other AWS services.
*
*/
private com.amazonaws.internal.SdkInternalList iamRoles;
/**
*
* 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:
*
* available
* creating
* deleting
* final-snapshot
* hardware-failure
* incompatible-hsm
* incompatible-network
* incompatible-parameters
* incompatible-restore
* modifying
* rebooting
* renaming
* resizing
* rotating-keys
* storage-full
* updating-hsm
*
*
*
* @param clusterStatus
* The current state of the cluster. Possible values are:
*
* available
* creating
* deleting
* final-snapshot
* hardware-failure
* incompatible-hsm
* incompatible-network
* incompatible-parameters
* incompatible-restore
* modifying
* 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:
*
* available
* creating
* deleting
* final-snapshot
* hardware-failure
* incompatible-hsm
* incompatible-network
* incompatible-parameters
* incompatible-restore
* modifying
* rebooting
* renaming
* resizing
* rotating-keys
* storage-full
* updating-hsm
*
*
*
* @return The current state of the cluster. Possible values are:
*
* available
* creating
* deleting
* final-snapshot
* hardware-failure
* incompatible-hsm
* incompatible-network
* incompatible-parameters
* incompatible-restore
* modifying
* rebooting
* renaming
* resizing
* rotating-keys
* storage-full
* updating-hsm
*
*/
public String getClusterStatus() {
return this.clusterStatus;
}
/**
*
* The current state of the cluster. Possible values are:
*
* available
* creating
* deleting
* final-snapshot
* hardware-failure
* incompatible-hsm
* incompatible-network
* incompatible-parameters
* incompatible-restore
* modifying
* rebooting
* renaming
* resizing
* rotating-keys
* storage-full
* updating-hsm
*
*
*
* @param clusterStatus
* The current state of the cluster. Possible values are:
*
* available
* creating
* deleting
* final-snapshot
* hardware-failure
* incompatible-hsm
* incompatible-network
* incompatible-parameters
* incompatible-restore
* modifying
* 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 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 master user name for the cluster. This name is used to connect to the
* database that is specified in DBName.
*
*
* @param masterUsername
* The master user name for the cluster. This name is used to connect
* to the database that is specified in DBName.
*/
public void setMasterUsername(String masterUsername) {
this.masterUsername = masterUsername;
}
/**
*
* The master user name for the cluster. This name is used to connect to the
* database that is specified in DBName.
*
*
* @return The master user name for the cluster. This name is used to
* connect to the database that is specified in DBName.
*/
public String getMasterUsername() {
return this.masterUsername;
}
/**
*
* The master user name for the cluster. This name is used to connect to the
* database that is specified in DBName.
*
*
* @param masterUsername
* The master user name for the cluster. This name is used to connect
* to the database that is specified in DBName.
* @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" 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" 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" 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" 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" 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" 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;
}
/**
*
* 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 a
* 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 a 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 a
* 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 a 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 a
* 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 a 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 a
* 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 a 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 Virtual Private Cloud (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 Virtual Private Cloud (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 Virtual Private Cloud (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 Virtual Private Cloud (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 Virtual Private Cloud (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 Virtual Private Cloud (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 Virtual Private Cloud (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 Virtual Private Cloud (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 UTC) during which system maintenance can occur.
*
*
* @param preferredMaintenanceWindow
* The weekly time range (in UTC) during which system maintenance can
* occur.
*/
public void setPreferredMaintenanceWindow(String preferredMaintenanceWindow) {
this.preferredMaintenanceWindow = preferredMaintenanceWindow;
}
/**
*
* The weekly time range (in UTC) during which system maintenance can occur.
*
*
* @return The weekly time range (in UTC) during which system maintenance
* can occur.
*/
public String getPreferredMaintenanceWindow() {
return this.preferredMaintenanceWindow;
}
/**
*
* The weekly time range (in UTC) during which system maintenance can occur.
*
*
* @param preferredMaintenanceWindow
* The weekly time range (in 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;
}
/**
*
* If present, changes to the cluster are pending. Specific pending changes
* are identified by subelements.
*
*
* @param pendingModifiedValues
* If present, changes to the cluster are pending. Specific pending
* changes are identified by subelements.
*/
public void setPendingModifiedValues(
PendingModifiedValues pendingModifiedValues) {
this.pendingModifiedValues = pendingModifiedValues;
}
/**
*
* If present, changes to the cluster are pending. Specific pending changes
* are identified by subelements.
*
*
* @return If present, changes to the cluster are pending. Specific pending
* changes are identified by subelements.
*/
public PendingModifiedValues getPendingModifiedValues() {
return this.pendingModifiedValues;
}
/**
*
* If present, changes to the cluster are pending. Specific pending changes
* are identified by subelements.
*
*
* @param pendingModifiedValues
* If present, 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;
}
/**
*
* If true
, major version upgrades will be applied
* automatically to the cluster during the maintenance window.
*
*
* @param allowVersionUpgrade
* If true
, major version upgrades will be applied
* automatically to the cluster during the maintenance window.
*/
public void setAllowVersionUpgrade(Boolean allowVersionUpgrade) {
this.allowVersionUpgrade = allowVersionUpgrade;
}
/**
*
* If true
, major version upgrades will be applied
* automatically to the cluster during the maintenance window.
*
*
* @return If true
, major version upgrades will be applied
* automatically to the cluster during the maintenance window.
*/
public Boolean getAllowVersionUpgrade() {
return this.allowVersionUpgrade;
}
/**
*
* If true
, major version upgrades will be applied
* automatically to the cluster during the maintenance window.
*
*
* @param allowVersionUpgrade
* If true
, 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;
}
/**
*
* If true
, major version upgrades will be applied
* automatically to the cluster during the maintenance window.
*
*
* @return If true
, 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;
}
/**
*
* If true
, the cluster can be accessed from a public network.
*
*
* @param publiclyAccessible
* If true
, the cluster can be accessed from a public
* network.
*/
public void setPubliclyAccessible(Boolean publiclyAccessible) {
this.publiclyAccessible = publiclyAccessible;
}
/**
*
* If true
, the cluster can be accessed from a public network.
*
*
* @return If true
, the cluster can be accessed from a public
* network.
*/
public Boolean getPubliclyAccessible() {
return this.publiclyAccessible;
}
/**
*
* If true
, the cluster can be accessed from a public network.
*
*
* @param publiclyAccessible
* If true
, 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;
}
/**
*
* If true
, the cluster can be accessed from a public network.
*
*
* @return If true
, the cluster can be accessed from a public
* network.
*/
public Boolean isPubliclyAccessible() {
return this.publiclyAccessible;
}
/**
*
* If true
, data in the cluster is encrypted at rest.
*
*
* @param encrypted
* If true
, data in the cluster is encrypted at rest.
*/
public void setEncrypted(Boolean encrypted) {
this.encrypted = encrypted;
}
/**
*
* If true
, data in the cluster is encrypted at rest.
*
*
* @return If true
, data in the cluster is encrypted at rest.
*/
public Boolean getEncrypted() {
return this.encrypted;
}
/**
*
* If true
, data in the cluster is encrypted at rest.
*
*
* @param encrypted
* If true
, 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;
}
/**
*
* If true
, data in the cluster is encrypted at rest.
*
*
* @return If true
, data in the cluster is encrypted at rest.
*/
public Boolean isEncrypted() {
return this.encrypted;
}
/**
*
* Describes the status of a cluster restore action. Returns null if the
* cluster was not created by restoring a snapshot.
*
*
* @param restoreStatus
* Describes the status of a cluster restore action. Returns null if
* the cluster was not created by restoring a snapshot.
*/
public void setRestoreStatus(RestoreStatus restoreStatus) {
this.restoreStatus = restoreStatus;
}
/**
*
* Describes the status of a cluster restore action. Returns null if the
* cluster was not created by restoring a snapshot.
*
*
* @return Describes the status of a cluster restore action. Returns null if
* the cluster was not created by restoring a snapshot.
*/
public RestoreStatus getRestoreStatus() {
return this.restoreStatus;
}
/**
*
* Describes the status of a cluster restore action. Returns null if the
* cluster was not created by restoring a snapshot.
*
*
* @param restoreStatus
* Describes the status of a cluster restore action. 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;
}
/**
*
* Reports whether the Amazon Redshift cluster has finished applying any HSM
* settings changes specified in a modify cluster command.
*
*
* Values: active, applying
*
*
* @param hsmStatus
* Reports whether the Amazon Redshift cluster has finished applying
* any HSM settings changes specified in a modify cluster
* command.
*
* Values: active, applying
*/
public void setHsmStatus(HsmStatus hsmStatus) {
this.hsmStatus = hsmStatus;
}
/**
*
* Reports whether the Amazon Redshift cluster has finished applying any HSM
* settings changes specified in a modify cluster command.
*
*
* Values: active, applying
*
*
* @return Reports whether the Amazon Redshift cluster has finished applying
* any HSM settings changes specified in a modify cluster
* command.
*
* Values: active, applying
*/
public HsmStatus getHsmStatus() {
return this.hsmStatus;
}
/**
*
* Reports whether the Amazon Redshift cluster has finished applying any HSM
* settings changes specified in a modify cluster command.
*
*
* Values: active, applying
*
*
* @param hsmStatus
* Reports whether the Amazon Redshift cluster has finished applying
* any 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;
}
/**
*
* Returns the destination region and retention period that are configured
* for cross-region snapshot copy.
*
*
* @param clusterSnapshotCopyStatus
* Returns the destination region and retention period that are
* configured for cross-region snapshot copy.
*/
public void setClusterSnapshotCopyStatus(
ClusterSnapshotCopyStatus clusterSnapshotCopyStatus) {
this.clusterSnapshotCopyStatus = clusterSnapshotCopyStatus;
}
/**
*
* Returns the destination region and retention period that are configured
* for cross-region snapshot copy.
*
*
* @return Returns the destination region and retention period that are
* configured for cross-region snapshot copy.
*/
public ClusterSnapshotCopyStatus getClusterSnapshotCopyStatus() {
return this.clusterSnapshotCopyStatus;
}
/**
*
* Returns the destination region and retention period that are configured
* for cross-region snapshot copy.
*
*
* @param clusterSnapshotCopyStatus
* 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 a cluster.
*
*
* @return The nodes in a cluster.
*/
public java.util.List getClusterNodes() {
if (clusterNodes == null) {
clusterNodes = new com.amazonaws.internal.SdkInternalList();
}
return clusterNodes;
}
/**
*
* The nodes in a cluster.
*
*
* @param clusterNodes
* The nodes in a 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 a 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 a 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 a cluster.
*
*
* @param clusterNodes
* The nodes in a 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 AWS Key Management Service (KMS) key ID of the encryption key used to
* encrypt data in the cluster.
*
*
* @param kmsKeyId
* The AWS 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 AWS Key Management Service (KMS) key ID of the encryption key used to
* encrypt data in the cluster.
*
*
* @return The AWS Key Management Service (KMS) key ID of the encryption key
* used to encrypt data in the cluster.
*/
public String getKmsKeyId() {
return this.kmsKeyId;
}
/**
*
* The AWS Key Management Service (KMS) key ID of the encryption key used to
* encrypt data in the cluster.
*
*
* @param kmsKeyId
* The AWS 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;
}
/**
*
* A list of AWS Identity and Access Management (IAM) roles that can be used
* by the cluster to access other AWS services.
*
*
* @return A list of AWS Identity and Access Management (IAM) roles that can
* be used by the cluster to access other AWS services.
*/
public java.util.List getIamRoles() {
if (iamRoles == null) {
iamRoles = new com.amazonaws.internal.SdkInternalList();
}
return iamRoles;
}
/**
*
* A list of AWS Identity and Access Management (IAM) roles that can be used
* by the cluster to access other AWS services.
*
*
* @param iamRoles
* A list of AWS Identity and Access Management (IAM) roles that can
* be used by the cluster to access other AWS 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 AWS Identity and Access Management (IAM) roles that can be used
* by the cluster to access other AWS 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 AWS Identity and Access Management (IAM) roles that can
* be used by the cluster to access other AWS 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 AWS Identity and Access Management (IAM) roles that can be used
* by the cluster to access other AWS services.
*
*
* @param iamRoles
* A list of AWS Identity and Access Management (IAM) roles that can
* be used by the cluster to access other AWS 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;
}
/**
* Returns a string representation of this object; useful for testing and
* debugging.
*
* @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: " + getClusterIdentifier() + ",");
if (getNodeType() != null)
sb.append("NodeType: " + getNodeType() + ",");
if (getClusterStatus() != null)
sb.append("ClusterStatus: " + getClusterStatus() + ",");
if (getModifyStatus() != null)
sb.append("ModifyStatus: " + getModifyStatus() + ",");
if (getMasterUsername() != null)
sb.append("MasterUsername: " + getMasterUsername() + ",");
if (getDBName() != null)
sb.append("DBName: " + getDBName() + ",");
if (getEndpoint() != null)
sb.append("Endpoint: " + getEndpoint() + ",");
if (getClusterCreateTime() != null)
sb.append("ClusterCreateTime: " + getClusterCreateTime() + ",");
if (getAutomatedSnapshotRetentionPeriod() != null)
sb.append("AutomatedSnapshotRetentionPeriod: "
+ getAutomatedSnapshotRetentionPeriod() + ",");
if (getClusterSecurityGroups() != null)
sb.append("ClusterSecurityGroups: " + getClusterSecurityGroups()
+ ",");
if (getVpcSecurityGroups() != null)
sb.append("VpcSecurityGroups: " + getVpcSecurityGroups() + ",");
if (getClusterParameterGroups() != null)
sb.append("ClusterParameterGroups: " + getClusterParameterGroups()
+ ",");
if (getClusterSubnetGroupName() != null)
sb.append("ClusterSubnetGroupName: " + getClusterSubnetGroupName()
+ ",");
if (getVpcId() != null)
sb.append("VpcId: " + getVpcId() + ",");
if (getAvailabilityZone() != null)
sb.append("AvailabilityZone: " + getAvailabilityZone() + ",");
if (getPreferredMaintenanceWindow() != null)
sb.append("PreferredMaintenanceWindow: "
+ getPreferredMaintenanceWindow() + ",");
if (getPendingModifiedValues() != null)
sb.append("PendingModifiedValues: " + getPendingModifiedValues()
+ ",");
if (getClusterVersion() != null)
sb.append("ClusterVersion: " + getClusterVersion() + ",");
if (getAllowVersionUpgrade() != null)
sb.append("AllowVersionUpgrade: " + getAllowVersionUpgrade() + ",");
if (getNumberOfNodes() != null)
sb.append("NumberOfNodes: " + getNumberOfNodes() + ",");
if (getPubliclyAccessible() != null)
sb.append("PubliclyAccessible: " + getPubliclyAccessible() + ",");
if (getEncrypted() != null)
sb.append("Encrypted: " + getEncrypted() + ",");
if (getRestoreStatus() != null)
sb.append("RestoreStatus: " + getRestoreStatus() + ",");
if (getHsmStatus() != null)
sb.append("HsmStatus: " + getHsmStatus() + ",");
if (getClusterSnapshotCopyStatus() != null)
sb.append("ClusterSnapshotCopyStatus: "
+ getClusterSnapshotCopyStatus() + ",");
if (getClusterPublicKey() != null)
sb.append("ClusterPublicKey: " + getClusterPublicKey() + ",");
if (getClusterNodes() != null)
sb.append("ClusterNodes: " + getClusterNodes() + ",");
if (getElasticIpStatus() != null)
sb.append("ElasticIpStatus: " + getElasticIpStatus() + ",");
if (getClusterRevisionNumber() != null)
sb.append("ClusterRevisionNumber: " + getClusterRevisionNumber()
+ ",");
if (getTags() != null)
sb.append("Tags: " + getTags() + ",");
if (getKmsKeyId() != null)
sb.append("KmsKeyId: " + getKmsKeyId() + ",");
if (getIamRoles() != null)
sb.append("IamRoles: " + getIamRoles());
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.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.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.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.getIamRoles() == null ^ this.getIamRoles() == null)
return false;
if (other.getIamRoles() != null
&& other.getIamRoles().equals(this.getIamRoles()) == 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
+ ((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
+ ((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
+ ((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
+ ((getIamRoles() == null) ? 0 : getIamRoles().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);
}
}
}