/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.docdb.model; import java.io.Serializable; import javax.annotation.Generated; /** *
* Detailed information about a cluster. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class DBCluster implements Serializable, Cloneable { /** ** Provides the list of Amazon EC2 Availability Zones that instances in the cluster can be created in. *
*/ private java.util.List* Specifies the number of days for which automatic snapshots are retained. *
*/ private Integer backupRetentionPeriod; /** ** Contains a user-supplied cluster identifier. This identifier is the unique key that identifies a cluster. *
*/ private String dBClusterIdentifier; /** ** Specifies the name of the cluster parameter group for the cluster. *
*/ private String dBClusterParameterGroup; /** ** Specifies information on the subnet group that is associated with the cluster, including the name, description, * and subnets in the subnet group. *
*/ private String dBSubnetGroup; /** ** Specifies the current state of this cluster. *
*/ private String status; /** ** Specifies the progress of the operation as a percentage. *
*/ private String percentProgress; /** ** The earliest time to which a database can be restored with point-in-time restore. *
*/ private java.util.Date earliestRestorableTime; /** ** Specifies the connection endpoint for the primary instance of the cluster. *
*/ private String endpoint; /** ** The reader endpoint for the cluster. The reader endpoint for a cluster load balances connections across the * Amazon DocumentDB replicas that are available in a cluster. As clients request new connections to the reader * endpoint, Amazon DocumentDB distributes the connection requests among the Amazon DocumentDB replicas in the * cluster. This functionality can help balance your read workload across multiple Amazon DocumentDB replicas in * your cluster. *
** If a failover occurs, and the Amazon DocumentDB replica that you are connected to is promoted to be the primary * instance, your connection is dropped. To continue sending your read workload to other Amazon DocumentDB replicas * in the cluster, you can then reconnect to the reader endpoint. *
*/ private String readerEndpoint; /** ** Specifies whether the cluster has instances in multiple Availability Zones. *
*/ private Boolean multiAZ; /** ** Provides the name of the database engine to be used for this cluster. *
*/ private String engine; /** ** Indicates the database engine version. *
*/ private String engineVersion; /** ** Specifies the latest time to which a database can be restored with point-in-time restore. *
*/ private java.util.Date latestRestorableTime; /** ** Specifies the port that the database engine is listening on. *
*/ private Integer port; /** ** Contains the master user name for the cluster. *
*/ private String masterUsername; /** *
* Specifies the daily time range during which automated backups are created if automated backups are enabled, as
* determined by the BackupRetentionPeriod
.
*
* Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). *
*/ private String preferredMaintenanceWindow; /** ** Contains the identifier of the source cluster if this cluster is a secondary cluster. *
*/ private String replicationSourceIdentifier; /** ** Contains one or more identifiers of the secondary clusters that are associated with this cluster. *
*/ private java.util.List* Provides the list of instances that make up the cluster. *
*/ private java.util.List* Provides a list of virtual private cloud (VPC) security groups that the cluster belongs to. *
*/ private java.util.List* Specifies the ID that Amazon Route 53 assigns when you create a hosted zone. *
*/ private String hostedZoneId; /** ** Specifies whether the cluster is encrypted. *
*/ private Boolean storageEncrypted; /** *
* If StorageEncrypted
is true
, the KMS key identifier for the encrypted cluster.
*
* The Amazon Web Services Region-unique, immutable identifier for the cluster. This identifier is found in * CloudTrail log entries whenever the KMS key for the cluster is accessed. *
*/ private String dbClusterResourceId; /** ** The Amazon Resource Name (ARN) for the cluster. *
*/ private String dBClusterArn; /** ** Provides a list of the Identity and Access Management (IAM) roles that are associated with the cluster. (IAM) * roles that are associated with a cluster grant permission for the cluster to access other Amazon Web Services * services on your behalf. *
*/ private java.util.List* Identifies the clone group to which the DB cluster is associated. *
*/ private String cloneGroupId; /** ** Specifies the time when the cluster was created, in Universal Coordinated Time (UTC). *
*/ private java.util.Date clusterCreateTime; /** ** A list of log types that this cluster is configured to export to Amazon CloudWatch Logs. *
*/ private java.util.List
* Specifies whether this cluster can be deleted. If DeletionProtection
is enabled, the cluster cannot
* be deleted unless it is modified and DeletionProtection
is disabled. DeletionProtection
* protects clusters from being accidentally deleted.
*
* Provides the list of Amazon EC2 Availability Zones that instances in the cluster can be created in. *
* * @return Provides the list of Amazon EC2 Availability Zones that instances in the cluster can be created in. */ public java.util.List* Provides the list of Amazon EC2 Availability Zones that instances in the cluster can be created in. *
* * @param availabilityZones * Provides the list of Amazon EC2 Availability Zones that instances in the cluster can be created in. */ public void setAvailabilityZones(java.util.Collection* Provides the list of Amazon EC2 Availability Zones that instances in the cluster can be created in. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setAvailabilityZones(java.util.Collection)} or {@link #withAvailabilityZones(java.util.Collection)} if * you want to override the existing values. *
* * @param availabilityZones * Provides the list of Amazon EC2 Availability Zones that instances in the cluster can be created in. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withAvailabilityZones(String... availabilityZones) { if (this.availabilityZones == null) { setAvailabilityZones(new java.util.ArrayList* Provides the list of Amazon EC2 Availability Zones that instances in the cluster can be created in. *
* * @param availabilityZones * Provides the list of Amazon EC2 Availability Zones that instances in the cluster can be created in. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withAvailabilityZones(java.util.Collection* Specifies the number of days for which automatic snapshots are retained. *
* * @param backupRetentionPeriod * Specifies the number of days for which automatic snapshots are retained. */ public void setBackupRetentionPeriod(Integer backupRetentionPeriod) { this.backupRetentionPeriod = backupRetentionPeriod; } /** ** Specifies the number of days for which automatic snapshots are retained. *
* * @return Specifies the number of days for which automatic snapshots are retained. */ public Integer getBackupRetentionPeriod() { return this.backupRetentionPeriod; } /** ** Specifies the number of days for which automatic snapshots are retained. *
* * @param backupRetentionPeriod * Specifies the number of days for which automatic snapshots are retained. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withBackupRetentionPeriod(Integer backupRetentionPeriod) { setBackupRetentionPeriod(backupRetentionPeriod); return this; } /** ** Contains a user-supplied cluster identifier. This identifier is the unique key that identifies a cluster. *
* * @param dBClusterIdentifier * Contains a user-supplied cluster identifier. This identifier is the unique key that identifies a cluster. */ public void setDBClusterIdentifier(String dBClusterIdentifier) { this.dBClusterIdentifier = dBClusterIdentifier; } /** ** Contains a user-supplied cluster identifier. This identifier is the unique key that identifies a cluster. *
* * @return Contains a user-supplied cluster identifier. This identifier is the unique key that identifies a cluster. */ public String getDBClusterIdentifier() { return this.dBClusterIdentifier; } /** ** Contains a user-supplied cluster identifier. This identifier is the unique key that identifies a cluster. *
* * @param dBClusterIdentifier * Contains a user-supplied cluster identifier. This identifier is the unique key that identifies a cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withDBClusterIdentifier(String dBClusterIdentifier) { setDBClusterIdentifier(dBClusterIdentifier); return this; } /** ** Specifies the name of the cluster parameter group for the cluster. *
* * @param dBClusterParameterGroup * Specifies the name of the cluster parameter group for the cluster. */ public void setDBClusterParameterGroup(String dBClusterParameterGroup) { this.dBClusterParameterGroup = dBClusterParameterGroup; } /** ** Specifies the name of the cluster parameter group for the cluster. *
* * @return Specifies the name of the cluster parameter group for the cluster. */ public String getDBClusterParameterGroup() { return this.dBClusterParameterGroup; } /** ** Specifies the name of the cluster parameter group for the cluster. *
* * @param dBClusterParameterGroup * Specifies the name of the cluster parameter group for the cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withDBClusterParameterGroup(String dBClusterParameterGroup) { setDBClusterParameterGroup(dBClusterParameterGroup); return this; } /** ** Specifies information on the subnet group that is associated with the cluster, including the name, description, * and subnets in the subnet group. *
* * @param dBSubnetGroup * Specifies information on the subnet group that is associated with the cluster, including the name, * description, and subnets in the subnet group. */ public void setDBSubnetGroup(String dBSubnetGroup) { this.dBSubnetGroup = dBSubnetGroup; } /** ** Specifies information on the subnet group that is associated with the cluster, including the name, description, * and subnets in the subnet group. *
* * @return Specifies information on the subnet group that is associated with the cluster, including the name, * description, and subnets in the subnet group. */ public String getDBSubnetGroup() { return this.dBSubnetGroup; } /** ** Specifies information on the subnet group that is associated with the cluster, including the name, description, * and subnets in the subnet group. *
* * @param dBSubnetGroup * Specifies information on the subnet group that is associated with the cluster, including the name, * description, and subnets in the subnet group. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withDBSubnetGroup(String dBSubnetGroup) { setDBSubnetGroup(dBSubnetGroup); return this; } /** ** Specifies the current state of this cluster. *
* * @param status * Specifies the current state of this cluster. */ public void setStatus(String status) { this.status = status; } /** ** Specifies the current state of this cluster. *
* * @return Specifies the current state of this cluster. */ public String getStatus() { return this.status; } /** ** Specifies the current state of this cluster. *
* * @param status * Specifies the current state of this cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withStatus(String status) { setStatus(status); return this; } /** ** Specifies the progress of the operation as a percentage. *
* * @param percentProgress * Specifies the progress of the operation as a percentage. */ public void setPercentProgress(String percentProgress) { this.percentProgress = percentProgress; } /** ** Specifies the progress of the operation as a percentage. *
* * @return Specifies the progress of the operation as a percentage. */ public String getPercentProgress() { return this.percentProgress; } /** ** Specifies the progress of the operation as a percentage. *
* * @param percentProgress * Specifies the progress of the operation as a percentage. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withPercentProgress(String percentProgress) { setPercentProgress(percentProgress); return this; } /** ** The earliest time to which a database can be restored with point-in-time restore. *
* * @param earliestRestorableTime * The earliest time to which a database can be restored with point-in-time restore. */ public void setEarliestRestorableTime(java.util.Date earliestRestorableTime) { this.earliestRestorableTime = earliestRestorableTime; } /** ** The earliest time to which a database can be restored with point-in-time restore. *
* * @return The earliest time to which a database can be restored with point-in-time restore. */ public java.util.Date getEarliestRestorableTime() { return this.earliestRestorableTime; } /** ** The earliest time to which a database can be restored with point-in-time restore. *
* * @param earliestRestorableTime * The earliest time to which a database can be restored with point-in-time restore. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withEarliestRestorableTime(java.util.Date earliestRestorableTime) { setEarliestRestorableTime(earliestRestorableTime); return this; } /** ** Specifies the connection endpoint for the primary instance of the cluster. *
* * @param endpoint * Specifies the connection endpoint for the primary instance of the cluster. */ public void setEndpoint(String endpoint) { this.endpoint = endpoint; } /** ** Specifies the connection endpoint for the primary instance of the cluster. *
* * @return Specifies the connection endpoint for the primary instance of the cluster. */ public String getEndpoint() { return this.endpoint; } /** ** Specifies the connection endpoint for the primary instance of the cluster. *
* * @param endpoint * Specifies the connection endpoint for the primary instance of the cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withEndpoint(String endpoint) { setEndpoint(endpoint); return this; } /** ** The reader endpoint for the cluster. The reader endpoint for a cluster load balances connections across the * Amazon DocumentDB replicas that are available in a cluster. As clients request new connections to the reader * endpoint, Amazon DocumentDB distributes the connection requests among the Amazon DocumentDB replicas in the * cluster. This functionality can help balance your read workload across multiple Amazon DocumentDB replicas in * your cluster. *
** If a failover occurs, and the Amazon DocumentDB replica that you are connected to is promoted to be the primary * instance, your connection is dropped. To continue sending your read workload to other Amazon DocumentDB replicas * in the cluster, you can then reconnect to the reader endpoint. *
* * @param readerEndpoint * The reader endpoint for the cluster. The reader endpoint for a cluster load balances connections across * the Amazon DocumentDB replicas that are available in a cluster. As clients request new connections to the * reader endpoint, Amazon DocumentDB distributes the connection requests among the Amazon DocumentDB * replicas in the cluster. This functionality can help balance your read workload across multiple Amazon * DocumentDB replicas in your cluster. ** If a failover occurs, and the Amazon DocumentDB replica that you are connected to is promoted to be the * primary instance, your connection is dropped. To continue sending your read workload to other Amazon * DocumentDB replicas in the cluster, you can then reconnect to the reader endpoint. */ public void setReaderEndpoint(String readerEndpoint) { this.readerEndpoint = readerEndpoint; } /** *
* The reader endpoint for the cluster. The reader endpoint for a cluster load balances connections across the * Amazon DocumentDB replicas that are available in a cluster. As clients request new connections to the reader * endpoint, Amazon DocumentDB distributes the connection requests among the Amazon DocumentDB replicas in the * cluster. This functionality can help balance your read workload across multiple Amazon DocumentDB replicas in * your cluster. *
** If a failover occurs, and the Amazon DocumentDB replica that you are connected to is promoted to be the primary * instance, your connection is dropped. To continue sending your read workload to other Amazon DocumentDB replicas * in the cluster, you can then reconnect to the reader endpoint. *
* * @return The reader endpoint for the cluster. The reader endpoint for a cluster load balances connections across * the Amazon DocumentDB replicas that are available in a cluster. As clients request new connections to the * reader endpoint, Amazon DocumentDB distributes the connection requests among the Amazon DocumentDB * replicas in the cluster. This functionality can help balance your read workload across multiple Amazon * DocumentDB replicas in your cluster. ** If a failover occurs, and the Amazon DocumentDB replica that you are connected to is promoted to be the * primary instance, your connection is dropped. To continue sending your read workload to other Amazon * DocumentDB replicas in the cluster, you can then reconnect to the reader endpoint. */ public String getReaderEndpoint() { return this.readerEndpoint; } /** *
* The reader endpoint for the cluster. The reader endpoint for a cluster load balances connections across the * Amazon DocumentDB replicas that are available in a cluster. As clients request new connections to the reader * endpoint, Amazon DocumentDB distributes the connection requests among the Amazon DocumentDB replicas in the * cluster. This functionality can help balance your read workload across multiple Amazon DocumentDB replicas in * your cluster. *
** If a failover occurs, and the Amazon DocumentDB replica that you are connected to is promoted to be the primary * instance, your connection is dropped. To continue sending your read workload to other Amazon DocumentDB replicas * in the cluster, you can then reconnect to the reader endpoint. *
* * @param readerEndpoint * The reader endpoint for the cluster. The reader endpoint for a cluster load balances connections across * the Amazon DocumentDB replicas that are available in a cluster. As clients request new connections to the * reader endpoint, Amazon DocumentDB distributes the connection requests among the Amazon DocumentDB * replicas in the cluster. This functionality can help balance your read workload across multiple Amazon * DocumentDB replicas in your cluster. ** If a failover occurs, and the Amazon DocumentDB replica that you are connected to is promoted to be the * primary instance, your connection is dropped. To continue sending your read workload to other Amazon * DocumentDB replicas in the cluster, you can then reconnect to the reader endpoint. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withReaderEndpoint(String readerEndpoint) { setReaderEndpoint(readerEndpoint); return this; } /** *
* Specifies whether the cluster has instances in multiple Availability Zones. *
* * @param multiAZ * Specifies whether the cluster has instances in multiple Availability Zones. */ public void setMultiAZ(Boolean multiAZ) { this.multiAZ = multiAZ; } /** ** Specifies whether the cluster has instances in multiple Availability Zones. *
* * @return Specifies whether the cluster has instances in multiple Availability Zones. */ public Boolean getMultiAZ() { return this.multiAZ; } /** ** Specifies whether the cluster has instances in multiple Availability Zones. *
* * @param multiAZ * Specifies whether the cluster has instances in multiple Availability Zones. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withMultiAZ(Boolean multiAZ) { setMultiAZ(multiAZ); return this; } /** ** Specifies whether the cluster has instances in multiple Availability Zones. *
* * @return Specifies whether the cluster has instances in multiple Availability Zones. */ public Boolean isMultiAZ() { return this.multiAZ; } /** ** Provides the name of the database engine to be used for this cluster. *
* * @param engine * Provides the name of the database engine to be used for this cluster. */ public void setEngine(String engine) { this.engine = engine; } /** ** Provides the name of the database engine to be used for this cluster. *
* * @return Provides the name of the database engine to be used for this cluster. */ public String getEngine() { return this.engine; } /** ** Provides the name of the database engine to be used for this cluster. *
* * @param engine * Provides the name of the database engine to be used for this cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withEngine(String engine) { setEngine(engine); return this; } /** ** Indicates the database engine version. *
* * @param engineVersion * Indicates the database engine version. */ public void setEngineVersion(String engineVersion) { this.engineVersion = engineVersion; } /** ** Indicates the database engine version. *
* * @return Indicates the database engine version. */ public String getEngineVersion() { return this.engineVersion; } /** ** Indicates the database engine version. *
* * @param engineVersion * Indicates the database engine version. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withEngineVersion(String engineVersion) { setEngineVersion(engineVersion); return this; } /** ** Specifies the latest time to which a database can be restored with point-in-time restore. *
* * @param latestRestorableTime * Specifies the latest time to which a database can be restored with point-in-time restore. */ public void setLatestRestorableTime(java.util.Date latestRestorableTime) { this.latestRestorableTime = latestRestorableTime; } /** ** Specifies the latest time to which a database can be restored with point-in-time restore. *
* * @return Specifies the latest time to which a database can be restored with point-in-time restore. */ public java.util.Date getLatestRestorableTime() { return this.latestRestorableTime; } /** ** Specifies the latest time to which a database can be restored with point-in-time restore. *
* * @param latestRestorableTime * Specifies the latest time to which a database can be restored with point-in-time restore. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withLatestRestorableTime(java.util.Date latestRestorableTime) { setLatestRestorableTime(latestRestorableTime); return this; } /** ** Specifies the port that the database engine is listening on. *
* * @param port * Specifies the port that the database engine is listening on. */ public void setPort(Integer port) { this.port = port; } /** ** Specifies the port that the database engine is listening on. *
* * @return Specifies the port that the database engine is listening on. */ public Integer getPort() { return this.port; } /** ** Specifies the port that the database engine is listening on. *
* * @param port * Specifies the port that the database engine is listening on. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withPort(Integer port) { setPort(port); return this; } /** ** Contains the master user name for the cluster. *
* * @param masterUsername * Contains the master user name for the cluster. */ public void setMasterUsername(String masterUsername) { this.masterUsername = masterUsername; } /** ** Contains the master user name for the cluster. *
* * @return Contains the master user name for the cluster. */ public String getMasterUsername() { return this.masterUsername; } /** ** Contains the master user name for the cluster. *
* * @param masterUsername * Contains the master user name for the cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withMasterUsername(String masterUsername) { setMasterUsername(masterUsername); return this; } /** *
* Specifies the daily time range during which automated backups are created if automated backups are enabled, as
* determined by the BackupRetentionPeriod
.
*
BackupRetentionPeriod
.
*/
public void setPreferredBackupWindow(String preferredBackupWindow) {
this.preferredBackupWindow = preferredBackupWindow;
}
/**
*
* Specifies the daily time range during which automated backups are created if automated backups are enabled, as
* determined by the BackupRetentionPeriod
.
*
BackupRetentionPeriod
.
*/
public String getPreferredBackupWindow() {
return this.preferredBackupWindow;
}
/**
*
* Specifies the daily time range during which automated backups are created if automated backups are enabled, as
* determined by the BackupRetentionPeriod
.
*
BackupRetentionPeriod
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DBCluster withPreferredBackupWindow(String preferredBackupWindow) {
setPreferredBackupWindow(preferredBackupWindow);
return this;
}
/**
* * Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). *
* * @param preferredMaintenanceWindow * Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time * (UTC). */ public void setPreferredMaintenanceWindow(String preferredMaintenanceWindow) { this.preferredMaintenanceWindow = preferredMaintenanceWindow; } /** ** Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). *
* * @return Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time * (UTC). */ public String getPreferredMaintenanceWindow() { return this.preferredMaintenanceWindow; } /** ** Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). *
* * @param preferredMaintenanceWindow * Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time * (UTC). * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withPreferredMaintenanceWindow(String preferredMaintenanceWindow) { setPreferredMaintenanceWindow(preferredMaintenanceWindow); return this; } /** ** Contains the identifier of the source cluster if this cluster is a secondary cluster. *
* * @param replicationSourceIdentifier * Contains the identifier of the source cluster if this cluster is a secondary cluster. */ public void setReplicationSourceIdentifier(String replicationSourceIdentifier) { this.replicationSourceIdentifier = replicationSourceIdentifier; } /** ** Contains the identifier of the source cluster if this cluster is a secondary cluster. *
* * @return Contains the identifier of the source cluster if this cluster is a secondary cluster. */ public String getReplicationSourceIdentifier() { return this.replicationSourceIdentifier; } /** ** Contains the identifier of the source cluster if this cluster is a secondary cluster. *
* * @param replicationSourceIdentifier * Contains the identifier of the source cluster if this cluster is a secondary cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withReplicationSourceIdentifier(String replicationSourceIdentifier) { setReplicationSourceIdentifier(replicationSourceIdentifier); return this; } /** ** Contains one or more identifiers of the secondary clusters that are associated with this cluster. *
* * @return Contains one or more identifiers of the secondary clusters that are associated with this cluster. */ public java.util.List* Contains one or more identifiers of the secondary clusters that are associated with this cluster. *
* * @param readReplicaIdentifiers * Contains one or more identifiers of the secondary clusters that are associated with this cluster. */ public void setReadReplicaIdentifiers(java.util.Collection* Contains one or more identifiers of the secondary clusters that are associated with this cluster. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setReadReplicaIdentifiers(java.util.Collection)} or * {@link #withReadReplicaIdentifiers(java.util.Collection)} if you want to override the existing values. *
* * @param readReplicaIdentifiers * Contains one or more identifiers of the secondary clusters that are associated with this cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withReadReplicaIdentifiers(String... readReplicaIdentifiers) { if (this.readReplicaIdentifiers == null) { setReadReplicaIdentifiers(new java.util.ArrayList* Contains one or more identifiers of the secondary clusters that are associated with this cluster. *
* * @param readReplicaIdentifiers * Contains one or more identifiers of the secondary clusters that are associated with this cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withReadReplicaIdentifiers(java.util.Collection* Provides the list of instances that make up the cluster. *
* * @return Provides the list of instances that make up the cluster. */ public java.util.List* Provides the list of instances that make up the cluster. *
* * @param dBClusterMembers * Provides the list of instances that make up the cluster. */ public void setDBClusterMembers(java.util.Collection* Provides the list of instances that make up the cluster. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setDBClusterMembers(java.util.Collection)} or {@link #withDBClusterMembers(java.util.Collection)} if you * want to override the existing values. *
* * @param dBClusterMembers * Provides the list of instances that make up the cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withDBClusterMembers(DBClusterMember... dBClusterMembers) { if (this.dBClusterMembers == null) { setDBClusterMembers(new java.util.ArrayList* Provides the list of instances that make up the cluster. *
* * @param dBClusterMembers * Provides the list of instances that make up the cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withDBClusterMembers(java.util.Collection* Provides a list of virtual private cloud (VPC) security groups that the cluster belongs to. *
* * @return Provides a list of virtual private cloud (VPC) security groups that the cluster belongs to. */ public java.util.List* Provides a list of virtual private cloud (VPC) security groups that the cluster belongs to. *
* * @param vpcSecurityGroups * Provides a list of virtual private cloud (VPC) security groups that the cluster belongs to. */ public void setVpcSecurityGroups(java.util.Collection* Provides a list of virtual private cloud (VPC) security groups that the cluster belongs to. *
** 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 * Provides a list of virtual private cloud (VPC) security groups that the cluster belongs to. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withVpcSecurityGroups(VpcSecurityGroupMembership... vpcSecurityGroups) { if (this.vpcSecurityGroups == null) { setVpcSecurityGroups(new java.util.ArrayList* Provides a list of virtual private cloud (VPC) security groups that the cluster belongs to. *
* * @param vpcSecurityGroups * Provides a list of virtual private cloud (VPC) security groups that the cluster belongs to. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withVpcSecurityGroups(java.util.Collection* Specifies the ID that Amazon Route 53 assigns when you create a hosted zone. *
* * @param hostedZoneId * Specifies the ID that Amazon Route 53 assigns when you create a hosted zone. */ public void setHostedZoneId(String hostedZoneId) { this.hostedZoneId = hostedZoneId; } /** ** Specifies the ID that Amazon Route 53 assigns when you create a hosted zone. *
* * @return Specifies the ID that Amazon Route 53 assigns when you create a hosted zone. */ public String getHostedZoneId() { return this.hostedZoneId; } /** ** Specifies the ID that Amazon Route 53 assigns when you create a hosted zone. *
* * @param hostedZoneId * Specifies the ID that Amazon Route 53 assigns when you create a hosted zone. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withHostedZoneId(String hostedZoneId) { setHostedZoneId(hostedZoneId); return this; } /** ** Specifies whether the cluster is encrypted. *
* * @param storageEncrypted * Specifies whether the cluster is encrypted. */ public void setStorageEncrypted(Boolean storageEncrypted) { this.storageEncrypted = storageEncrypted; } /** ** Specifies whether the cluster is encrypted. *
* * @return Specifies whether the cluster is encrypted. */ public Boolean getStorageEncrypted() { return this.storageEncrypted; } /** ** Specifies whether the cluster is encrypted. *
* * @param storageEncrypted * Specifies whether the cluster is encrypted. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withStorageEncrypted(Boolean storageEncrypted) { setStorageEncrypted(storageEncrypted); return this; } /** ** Specifies whether the cluster is encrypted. *
* * @return Specifies whether the cluster is encrypted. */ public Boolean isStorageEncrypted() { return this.storageEncrypted; } /** *
* If StorageEncrypted
is true
, the KMS key identifier for the encrypted cluster.
*
StorageEncrypted
is true
, the KMS key identifier for the encrypted cluster.
*/
public void setKmsKeyId(String kmsKeyId) {
this.kmsKeyId = kmsKeyId;
}
/**
*
* If StorageEncrypted
is true
, the KMS key identifier for the encrypted cluster.
*
StorageEncrypted
is true
, the KMS key identifier for the encrypted cluster.
*/
public String getKmsKeyId() {
return this.kmsKeyId;
}
/**
*
* If StorageEncrypted
is true
, the KMS key identifier for the encrypted cluster.
*
StorageEncrypted
is true
, the KMS key identifier for the encrypted cluster.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DBCluster withKmsKeyId(String kmsKeyId) {
setKmsKeyId(kmsKeyId);
return this;
}
/**
* * The Amazon Web Services Region-unique, immutable identifier for the cluster. This identifier is found in * CloudTrail log entries whenever the KMS key for the cluster is accessed. *
* * @param dbClusterResourceId * The Amazon Web Services Region-unique, immutable identifier for the cluster. This identifier is found in * CloudTrail log entries whenever the KMS key for the cluster is accessed. */ public void setDbClusterResourceId(String dbClusterResourceId) { this.dbClusterResourceId = dbClusterResourceId; } /** ** The Amazon Web Services Region-unique, immutable identifier for the cluster. This identifier is found in * CloudTrail log entries whenever the KMS key for the cluster is accessed. *
* * @return The Amazon Web Services Region-unique, immutable identifier for the cluster. This identifier is found in * CloudTrail log entries whenever the KMS key for the cluster is accessed. */ public String getDbClusterResourceId() { return this.dbClusterResourceId; } /** ** The Amazon Web Services Region-unique, immutable identifier for the cluster. This identifier is found in * CloudTrail log entries whenever the KMS key for the cluster is accessed. *
* * @param dbClusterResourceId * The Amazon Web Services Region-unique, immutable identifier for the cluster. This identifier is found in * CloudTrail log entries whenever the KMS key for the cluster is accessed. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withDbClusterResourceId(String dbClusterResourceId) { setDbClusterResourceId(dbClusterResourceId); return this; } /** ** The Amazon Resource Name (ARN) for the cluster. *
* * @param dBClusterArn * The Amazon Resource Name (ARN) for the cluster. */ public void setDBClusterArn(String dBClusterArn) { this.dBClusterArn = dBClusterArn; } /** ** The Amazon Resource Name (ARN) for the cluster. *
* * @return The Amazon Resource Name (ARN) for the cluster. */ public String getDBClusterArn() { return this.dBClusterArn; } /** ** The Amazon Resource Name (ARN) for the cluster. *
* * @param dBClusterArn * The Amazon Resource Name (ARN) for the cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withDBClusterArn(String dBClusterArn) { setDBClusterArn(dBClusterArn); return this; } /** ** Provides a list of the Identity and Access Management (IAM) roles that are associated with the cluster. (IAM) * roles that are associated with a cluster grant permission for the cluster to access other Amazon Web Services * services on your behalf. *
* * @return Provides a list of the Identity and Access Management (IAM) roles that are associated with the cluster. * (IAM) roles that are associated with a cluster grant permission for the cluster to access other Amazon * Web Services services on your behalf. */ public java.util.List* Provides a list of the Identity and Access Management (IAM) roles that are associated with the cluster. (IAM) * roles that are associated with a cluster grant permission for the cluster to access other Amazon Web Services * services on your behalf. *
* * @param associatedRoles * Provides a list of the Identity and Access Management (IAM) roles that are associated with the cluster. * (IAM) roles that are associated with a cluster grant permission for the cluster to access other Amazon Web * Services services on your behalf. */ public void setAssociatedRoles(java.util.Collection* Provides a list of the Identity and Access Management (IAM) roles that are associated with the cluster. (IAM) * roles that are associated with a cluster grant permission for the cluster to access other Amazon Web Services * services on your behalf. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setAssociatedRoles(java.util.Collection)} or {@link #withAssociatedRoles(java.util.Collection)} if you * want to override the existing values. *
* * @param associatedRoles * Provides a list of the Identity and Access Management (IAM) roles that are associated with the cluster. * (IAM) roles that are associated with a cluster grant permission for the cluster to access other Amazon Web * Services services on your behalf. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withAssociatedRoles(DBClusterRole... associatedRoles) { if (this.associatedRoles == null) { setAssociatedRoles(new java.util.ArrayList* Provides a list of the Identity and Access Management (IAM) roles that are associated with the cluster. (IAM) * roles that are associated with a cluster grant permission for the cluster to access other Amazon Web Services * services on your behalf. *
* * @param associatedRoles * Provides a list of the Identity and Access Management (IAM) roles that are associated with the cluster. * (IAM) roles that are associated with a cluster grant permission for the cluster to access other Amazon Web * Services services on your behalf. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withAssociatedRoles(java.util.Collection* Identifies the clone group to which the DB cluster is associated. *
* * @param cloneGroupId * Identifies the clone group to which the DB cluster is associated. */ public void setCloneGroupId(String cloneGroupId) { this.cloneGroupId = cloneGroupId; } /** ** Identifies the clone group to which the DB cluster is associated. *
* * @return Identifies the clone group to which the DB cluster is associated. */ public String getCloneGroupId() { return this.cloneGroupId; } /** ** Identifies the clone group to which the DB cluster is associated. *
* * @param cloneGroupId * Identifies the clone group to which the DB cluster is associated. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withCloneGroupId(String cloneGroupId) { setCloneGroupId(cloneGroupId); return this; } /** ** Specifies the time when the cluster was created, in Universal Coordinated Time (UTC). *
* * @param clusterCreateTime * Specifies the time when the cluster was created, in Universal Coordinated Time (UTC). */ public void setClusterCreateTime(java.util.Date clusterCreateTime) { this.clusterCreateTime = clusterCreateTime; } /** ** Specifies the time when the cluster was created, in Universal Coordinated Time (UTC). *
* * @return Specifies the time when the cluster was created, in Universal Coordinated Time (UTC). */ public java.util.Date getClusterCreateTime() { return this.clusterCreateTime; } /** ** Specifies the time when the cluster was created, in Universal Coordinated Time (UTC). *
* * @param clusterCreateTime * Specifies the time when the cluster was created, in Universal Coordinated Time (UTC). * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withClusterCreateTime(java.util.Date clusterCreateTime) { setClusterCreateTime(clusterCreateTime); return this; } /** ** A list of log types that this cluster is configured to export to Amazon CloudWatch Logs. *
* * @return A list of log types that this cluster is configured to export to Amazon CloudWatch Logs. */ public java.util.List* A list of log types that this cluster is configured to export to Amazon CloudWatch Logs. *
* * @param enabledCloudwatchLogsExports * A list of log types that this cluster is configured to export to Amazon CloudWatch Logs. */ public void setEnabledCloudwatchLogsExports(java.util.Collection* A list of log types that this cluster is configured to export to Amazon CloudWatch Logs. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setEnabledCloudwatchLogsExports(java.util.Collection)} or * {@link #withEnabledCloudwatchLogsExports(java.util.Collection)} if you want to override the existing values. *
* * @param enabledCloudwatchLogsExports * A list of log types that this cluster is configured to export to Amazon CloudWatch Logs. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withEnabledCloudwatchLogsExports(String... enabledCloudwatchLogsExports) { if (this.enabledCloudwatchLogsExports == null) { setEnabledCloudwatchLogsExports(new java.util.ArrayList* A list of log types that this cluster is configured to export to Amazon CloudWatch Logs. *
* * @param enabledCloudwatchLogsExports * A list of log types that this cluster is configured to export to Amazon CloudWatch Logs. * @return Returns a reference to this object so that method calls can be chained together. */ public DBCluster withEnabledCloudwatchLogsExports(java.util.Collection
* Specifies whether this cluster can be deleted. If DeletionProtection
is enabled, the cluster cannot
* be deleted unless it is modified and DeletionProtection
is disabled. DeletionProtection
* protects clusters from being accidentally deleted.
*
DeletionProtection
is enabled, the cluster
* cannot be deleted unless it is modified and DeletionProtection
is disabled.
* DeletionProtection
protects clusters from being accidentally deleted.
*/
public void setDeletionProtection(Boolean deletionProtection) {
this.deletionProtection = deletionProtection;
}
/**
*
* Specifies whether this cluster can be deleted. If DeletionProtection
is enabled, the cluster cannot
* be deleted unless it is modified and DeletionProtection
is disabled. DeletionProtection
* protects clusters from being accidentally deleted.
*
DeletionProtection
is enabled, the cluster
* cannot be deleted unless it is modified and DeletionProtection
is disabled.
* DeletionProtection
protects clusters from being accidentally deleted.
*/
public Boolean getDeletionProtection() {
return this.deletionProtection;
}
/**
*
* Specifies whether this cluster can be deleted. If DeletionProtection
is enabled, the cluster cannot
* be deleted unless it is modified and DeletionProtection
is disabled. DeletionProtection
* protects clusters from being accidentally deleted.
*
DeletionProtection
is enabled, the cluster
* cannot be deleted unless it is modified and DeletionProtection
is disabled.
* DeletionProtection
protects clusters from being accidentally deleted.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public DBCluster withDeletionProtection(Boolean deletionProtection) {
setDeletionProtection(deletionProtection);
return this;
}
/**
*
* Specifies whether this cluster can be deleted. If DeletionProtection
is enabled, the cluster cannot
* be deleted unless it is modified and DeletionProtection
is disabled. DeletionProtection
* protects clusters from being accidentally deleted.
*
DeletionProtection
is enabled, the cluster
* cannot be deleted unless it is modified and DeletionProtection
is disabled.
* DeletionProtection
protects clusters from being accidentally deleted.
*/
public Boolean isDeletionProtection() {
return this.deletionProtection;
}
/**
* 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 (getAvailabilityZones() != null)
sb.append("AvailabilityZones: ").append(getAvailabilityZones()).append(",");
if (getBackupRetentionPeriod() != null)
sb.append("BackupRetentionPeriod: ").append(getBackupRetentionPeriod()).append(",");
if (getDBClusterIdentifier() != null)
sb.append("DBClusterIdentifier: ").append(getDBClusterIdentifier()).append(",");
if (getDBClusterParameterGroup() != null)
sb.append("DBClusterParameterGroup: ").append(getDBClusterParameterGroup()).append(",");
if (getDBSubnetGroup() != null)
sb.append("DBSubnetGroup: ").append(getDBSubnetGroup()).append(",");
if (getStatus() != null)
sb.append("Status: ").append(getStatus()).append(",");
if (getPercentProgress() != null)
sb.append("PercentProgress: ").append(getPercentProgress()).append(",");
if (getEarliestRestorableTime() != null)
sb.append("EarliestRestorableTime: ").append(getEarliestRestorableTime()).append(",");
if (getEndpoint() != null)
sb.append("Endpoint: ").append(getEndpoint()).append(",");
if (getReaderEndpoint() != null)
sb.append("ReaderEndpoint: ").append(getReaderEndpoint()).append(",");
if (getMultiAZ() != null)
sb.append("MultiAZ: ").append(getMultiAZ()).append(",");
if (getEngine() != null)
sb.append("Engine: ").append(getEngine()).append(",");
if (getEngineVersion() != null)
sb.append("EngineVersion: ").append(getEngineVersion()).append(",");
if (getLatestRestorableTime() != null)
sb.append("LatestRestorableTime: ").append(getLatestRestorableTime()).append(",");
if (getPort() != null)
sb.append("Port: ").append(getPort()).append(",");
if (getMasterUsername() != null)
sb.append("MasterUsername: ").append(getMasterUsername()).append(",");
if (getPreferredBackupWindow() != null)
sb.append("PreferredBackupWindow: ").append(getPreferredBackupWindow()).append(",");
if (getPreferredMaintenanceWindow() != null)
sb.append("PreferredMaintenanceWindow: ").append(getPreferredMaintenanceWindow()).append(",");
if (getReplicationSourceIdentifier() != null)
sb.append("ReplicationSourceIdentifier: ").append(getReplicationSourceIdentifier()).append(",");
if (getReadReplicaIdentifiers() != null)
sb.append("ReadReplicaIdentifiers: ").append(getReadReplicaIdentifiers()).append(",");
if (getDBClusterMembers() != null)
sb.append("DBClusterMembers: ").append(getDBClusterMembers()).append(",");
if (getVpcSecurityGroups() != null)
sb.append("VpcSecurityGroups: ").append(getVpcSecurityGroups()).append(",");
if (getHostedZoneId() != null)
sb.append("HostedZoneId: ").append(getHostedZoneId()).append(",");
if (getStorageEncrypted() != null)
sb.append("StorageEncrypted: ").append(getStorageEncrypted()).append(",");
if (getKmsKeyId() != null)
sb.append("KmsKeyId: ").append(getKmsKeyId()).append(",");
if (getDbClusterResourceId() != null)
sb.append("DbClusterResourceId: ").append(getDbClusterResourceId()).append(",");
if (getDBClusterArn() != null)
sb.append("DBClusterArn: ").append(getDBClusterArn()).append(",");
if (getAssociatedRoles() != null)
sb.append("AssociatedRoles: ").append(getAssociatedRoles()).append(",");
if (getCloneGroupId() != null)
sb.append("CloneGroupId: ").append(getCloneGroupId()).append(",");
if (getClusterCreateTime() != null)
sb.append("ClusterCreateTime: ").append(getClusterCreateTime()).append(",");
if (getEnabledCloudwatchLogsExports() != null)
sb.append("EnabledCloudwatchLogsExports: ").append(getEnabledCloudwatchLogsExports()).append(",");
if (getDeletionProtection() != null)
sb.append("DeletionProtection: ").append(getDeletionProtection());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof DBCluster == false)
return false;
DBCluster other = (DBCluster) obj;
if (other.getAvailabilityZones() == null ^ this.getAvailabilityZones() == null)
return false;
if (other.getAvailabilityZones() != null && other.getAvailabilityZones().equals(this.getAvailabilityZones()) == false)
return false;
if (other.getBackupRetentionPeriod() == null ^ this.getBackupRetentionPeriod() == null)
return false;
if (other.getBackupRetentionPeriod() != null && other.getBackupRetentionPeriod().equals(this.getBackupRetentionPeriod()) == false)
return false;
if (other.getDBClusterIdentifier() == null ^ this.getDBClusterIdentifier() == null)
return false;
if (other.getDBClusterIdentifier() != null && other.getDBClusterIdentifier().equals(this.getDBClusterIdentifier()) == false)
return false;
if (other.getDBClusterParameterGroup() == null ^ this.getDBClusterParameterGroup() == null)
return false;
if (other.getDBClusterParameterGroup() != null && other.getDBClusterParameterGroup().equals(this.getDBClusterParameterGroup()) == false)
return false;
if (other.getDBSubnetGroup() == null ^ this.getDBSubnetGroup() == null)
return false;
if (other.getDBSubnetGroup() != null && other.getDBSubnetGroup().equals(this.getDBSubnetGroup()) == false)
return false;
if (other.getStatus() == null ^ this.getStatus() == null)
return false;
if (other.getStatus() != null && other.getStatus().equals(this.getStatus()) == false)
return false;
if (other.getPercentProgress() == null ^ this.getPercentProgress() == null)
return false;
if (other.getPercentProgress() != null && other.getPercentProgress().equals(this.getPercentProgress()) == false)
return false;
if (other.getEarliestRestorableTime() == null ^ this.getEarliestRestorableTime() == null)
return false;
if (other.getEarliestRestorableTime() != null && other.getEarliestRestorableTime().equals(this.getEarliestRestorableTime()) == 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.getReaderEndpoint() == null ^ this.getReaderEndpoint() == null)
return false;
if (other.getReaderEndpoint() != null && other.getReaderEndpoint().equals(this.getReaderEndpoint()) == 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.getEngine() == null ^ this.getEngine() == null)
return false;
if (other.getEngine() != null && other.getEngine().equals(this.getEngine()) == false)
return false;
if (other.getEngineVersion() == null ^ this.getEngineVersion() == null)
return false;
if (other.getEngineVersion() != null && other.getEngineVersion().equals(this.getEngineVersion()) == false)
return false;
if (other.getLatestRestorableTime() == null ^ this.getLatestRestorableTime() == null)
return false;
if (other.getLatestRestorableTime() != null && other.getLatestRestorableTime().equals(this.getLatestRestorableTime()) == false)
return false;
if (other.getPort() == null ^ this.getPort() == null)
return false;
if (other.getPort() != null && other.getPort().equals(this.getPort()) == 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.getPreferredBackupWindow() == null ^ this.getPreferredBackupWindow() == null)
return false;
if (other.getPreferredBackupWindow() != null && other.getPreferredBackupWindow().equals(this.getPreferredBackupWindow()) == 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.getReplicationSourceIdentifier() == null ^ this.getReplicationSourceIdentifier() == null)
return false;
if (other.getReplicationSourceIdentifier() != null && other.getReplicationSourceIdentifier().equals(this.getReplicationSourceIdentifier()) == false)
return false;
if (other.getReadReplicaIdentifiers() == null ^ this.getReadReplicaIdentifiers() == null)
return false;
if (other.getReadReplicaIdentifiers() != null && other.getReadReplicaIdentifiers().equals(this.getReadReplicaIdentifiers()) == false)
return false;
if (other.getDBClusterMembers() == null ^ this.getDBClusterMembers() == null)
return false;
if (other.getDBClusterMembers() != null && other.getDBClusterMembers().equals(this.getDBClusterMembers()) == 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.getHostedZoneId() == null ^ this.getHostedZoneId() == null)
return false;
if (other.getHostedZoneId() != null && other.getHostedZoneId().equals(this.getHostedZoneId()) == false)
return false;
if (other.getStorageEncrypted() == null ^ this.getStorageEncrypted() == null)
return false;
if (other.getStorageEncrypted() != null && other.getStorageEncrypted().equals(this.getStorageEncrypted()) == 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.getDbClusterResourceId() == null ^ this.getDbClusterResourceId() == null)
return false;
if (other.getDbClusterResourceId() != null && other.getDbClusterResourceId().equals(this.getDbClusterResourceId()) == false)
return false;
if (other.getDBClusterArn() == null ^ this.getDBClusterArn() == null)
return false;
if (other.getDBClusterArn() != null && other.getDBClusterArn().equals(this.getDBClusterArn()) == false)
return false;
if (other.getAssociatedRoles() == null ^ this.getAssociatedRoles() == null)
return false;
if (other.getAssociatedRoles() != null && other.getAssociatedRoles().equals(this.getAssociatedRoles()) == false)
return false;
if (other.getCloneGroupId() == null ^ this.getCloneGroupId() == null)
return false;
if (other.getCloneGroupId() != null && other.getCloneGroupId().equals(this.getCloneGroupId()) == 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.getEnabledCloudwatchLogsExports() == null ^ this.getEnabledCloudwatchLogsExports() == null)
return false;
if (other.getEnabledCloudwatchLogsExports() != null && other.getEnabledCloudwatchLogsExports().equals(this.getEnabledCloudwatchLogsExports()) == false)
return false;
if (other.getDeletionProtection() == null ^ this.getDeletionProtection() == null)
return false;
if (other.getDeletionProtection() != null && other.getDeletionProtection().equals(this.getDeletionProtection()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getAvailabilityZones() == null) ? 0 : getAvailabilityZones().hashCode());
hashCode = prime * hashCode + ((getBackupRetentionPeriod() == null) ? 0 : getBackupRetentionPeriod().hashCode());
hashCode = prime * hashCode + ((getDBClusterIdentifier() == null) ? 0 : getDBClusterIdentifier().hashCode());
hashCode = prime * hashCode + ((getDBClusterParameterGroup() == null) ? 0 : getDBClusterParameterGroup().hashCode());
hashCode = prime * hashCode + ((getDBSubnetGroup() == null) ? 0 : getDBSubnetGroup().hashCode());
hashCode = prime * hashCode + ((getStatus() == null) ? 0 : getStatus().hashCode());
hashCode = prime * hashCode + ((getPercentProgress() == null) ? 0 : getPercentProgress().hashCode());
hashCode = prime * hashCode + ((getEarliestRestorableTime() == null) ? 0 : getEarliestRestorableTime().hashCode());
hashCode = prime * hashCode + ((getEndpoint() == null) ? 0 : getEndpoint().hashCode());
hashCode = prime * hashCode + ((getReaderEndpoint() == null) ? 0 : getReaderEndpoint().hashCode());
hashCode = prime * hashCode + ((getMultiAZ() == null) ? 0 : getMultiAZ().hashCode());
hashCode = prime * hashCode + ((getEngine() == null) ? 0 : getEngine().hashCode());
hashCode = prime * hashCode + ((getEngineVersion() == null) ? 0 : getEngineVersion().hashCode());
hashCode = prime * hashCode + ((getLatestRestorableTime() == null) ? 0 : getLatestRestorableTime().hashCode());
hashCode = prime * hashCode + ((getPort() == null) ? 0 : getPort().hashCode());
hashCode = prime * hashCode + ((getMasterUsername() == null) ? 0 : getMasterUsername().hashCode());
hashCode = prime * hashCode + ((getPreferredBackupWindow() == null) ? 0 : getPreferredBackupWindow().hashCode());
hashCode = prime * hashCode + ((getPreferredMaintenanceWindow() == null) ? 0 : getPreferredMaintenanceWindow().hashCode());
hashCode = prime * hashCode + ((getReplicationSourceIdentifier() == null) ? 0 : getReplicationSourceIdentifier().hashCode());
hashCode = prime * hashCode + ((getReadReplicaIdentifiers() == null) ? 0 : getReadReplicaIdentifiers().hashCode());
hashCode = prime * hashCode + ((getDBClusterMembers() == null) ? 0 : getDBClusterMembers().hashCode());
hashCode = prime * hashCode + ((getVpcSecurityGroups() == null) ? 0 : getVpcSecurityGroups().hashCode());
hashCode = prime * hashCode + ((getHostedZoneId() == null) ? 0 : getHostedZoneId().hashCode());
hashCode = prime * hashCode + ((getStorageEncrypted() == null) ? 0 : getStorageEncrypted().hashCode());
hashCode = prime * hashCode + ((getKmsKeyId() == null) ? 0 : getKmsKeyId().hashCode());
hashCode = prime * hashCode + ((getDbClusterResourceId() == null) ? 0 : getDbClusterResourceId().hashCode());
hashCode = prime * hashCode + ((getDBClusterArn() == null) ? 0 : getDBClusterArn().hashCode());
hashCode = prime * hashCode + ((getAssociatedRoles() == null) ? 0 : getAssociatedRoles().hashCode());
hashCode = prime * hashCode + ((getCloneGroupId() == null) ? 0 : getCloneGroupId().hashCode());
hashCode = prime * hashCode + ((getClusterCreateTime() == null) ? 0 : getClusterCreateTime().hashCode());
hashCode = prime * hashCode + ((getEnabledCloudwatchLogsExports() == null) ? 0 : getEnabledCloudwatchLogsExports().hashCode());
hashCode = prime * hashCode + ((getDeletionProtection() == null) ? 0 : getDeletionProtection().hashCode());
return hashCode;
}
@Override
public DBCluster clone() {
try {
return (DBCluster) super.clone();
} catch (CloneNotSupportedException e) {
throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e);
}
}
}