/* * 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; import com.amazonaws.AmazonWebServiceRequest; /** *
* Represents the input to CreateDBInstance. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class CreateDBInstanceRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** ** The instance identifier. This parameter is stored as a lowercase string. *
** Constraints: *
** Must contain from 1 to 63 letters, numbers, or hyphens. *
** The first character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
*
* Example: mydbinstance
*
* The compute and memory capacity of the instance; for example, db.r5.large
.
*
* The name of the database engine to be used for this instance. *
*
* Valid value: docdb
*
* The Amazon EC2 Availability Zone that the instance is created in. *
** Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region. *
*
* Example: us-east-1d
*
* The time range each week during which system maintenance can occur, in Universal Coordinated Time (UTC). *
*
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services * Region, occurring on a random day of the week. *
** Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun *
** Constraints: Minimum 30-minute window. *
*/ private String preferredMaintenanceWindow; /** ** This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB does not perform minor version upgrades * regardless of the value set. *
*
* Default: false
*
* The tags to be assigned to the instance. You can assign up to 10 tags to an instance. *
*/ private java.util.List* The identifier of the cluster that the instance will belong to. *
*/ private String dBClusterIdentifier; /** ** A value that indicates whether to copy tags from the DB instance to snapshots of the DB instance. By default, * tags are not copied. *
*/ private Boolean copyTagsToSnapshot; /** ** A value that specifies the order in which an Amazon DocumentDB replica is promoted to the primary instance after * a failure of the existing primary instance. *
** Default: 1 *
** Valid values: 0-15 *
*/ private Integer promotionTier; /** ** A value that indicates whether to enable Performance Insights for the DB Instance. For more information, see Using Amazon * Performance Insights. *
*/ private Boolean enablePerformanceInsights; /** ** The KMS key identifier for encryption of Performance Insights data. *
** The KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. *
** If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default KMS key. * There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different * default KMS key for each Amazon Web Services region. *
*/ private String performanceInsightsKMSKeyId; /** ** The instance identifier. This parameter is stored as a lowercase string. *
** Constraints: *
** Must contain from 1 to 63 letters, numbers, or hyphens. *
** The first character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
*
* Example: mydbinstance
*
* Constraints: *
** Must contain from 1 to 63 letters, numbers, or hyphens. *
** The first character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
*
* Example: mydbinstance
*/
public void setDBInstanceIdentifier(String dBInstanceIdentifier) {
this.dBInstanceIdentifier = dBInstanceIdentifier;
}
/**
*
* The instance identifier. This parameter is stored as a lowercase string. *
** Constraints: *
** Must contain from 1 to 63 letters, numbers, or hyphens. *
** The first character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
*
* Example: mydbinstance
*
* Constraints: *
** Must contain from 1 to 63 letters, numbers, or hyphens. *
** The first character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
*
* Example: mydbinstance
*/
public String getDBInstanceIdentifier() {
return this.dBInstanceIdentifier;
}
/**
*
* The instance identifier. This parameter is stored as a lowercase string. *
** Constraints: *
** Must contain from 1 to 63 letters, numbers, or hyphens. *
** The first character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
*
* Example: mydbinstance
*
* Constraints: *
** Must contain from 1 to 63 letters, numbers, or hyphens. *
** The first character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
*
* Example: mydbinstance
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDBInstanceRequest withDBInstanceIdentifier(String dBInstanceIdentifier) {
setDBInstanceIdentifier(dBInstanceIdentifier);
return this;
}
/**
*
* The compute and memory capacity of the instance; for example, db.r5.large
.
*
db.r5.large
.
*/
public void setDBInstanceClass(String dBInstanceClass) {
this.dBInstanceClass = dBInstanceClass;
}
/**
*
* The compute and memory capacity of the instance; for example, db.r5.large
.
*
db.r5.large
.
*/
public String getDBInstanceClass() {
return this.dBInstanceClass;
}
/**
*
* The compute and memory capacity of the instance; for example, db.r5.large
.
*
db.r5.large
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDBInstanceRequest withDBInstanceClass(String dBInstanceClass) {
setDBInstanceClass(dBInstanceClass);
return this;
}
/**
* * The name of the database engine to be used for this instance. *
*
* Valid value: docdb
*
* Valid value: docdb
*/
public void setEngine(String engine) {
this.engine = engine;
}
/**
*
* The name of the database engine to be used for this instance. *
*
* Valid value: docdb
*
* Valid value: docdb
*/
public String getEngine() {
return this.engine;
}
/**
*
* The name of the database engine to be used for this instance. *
*
* Valid value: docdb
*
* Valid value: docdb
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDBInstanceRequest withEngine(String engine) {
setEngine(engine);
return this;
}
/**
*
* The Amazon EC2 Availability Zone that the instance is created in. *
** Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region. *
*
* Example: us-east-1d
*
* Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region. *
*
* Example: us-east-1d
*/
public void setAvailabilityZone(String availabilityZone) {
this.availabilityZone = availabilityZone;
}
/**
*
* The Amazon EC2 Availability Zone that the instance is created in. *
** Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region. *
*
* Example: us-east-1d
*
* Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region. *
*
* Example: us-east-1d
*/
public String getAvailabilityZone() {
return this.availabilityZone;
}
/**
*
* The Amazon EC2 Availability Zone that the instance is created in. *
** Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region. *
*
* Example: us-east-1d
*
* Default: A random, system-chosen Availability Zone in the endpoint's Amazon Web Services Region. *
*
* Example: us-east-1d
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDBInstanceRequest withAvailabilityZone(String availabilityZone) {
setAvailabilityZone(availabilityZone);
return this;
}
/**
*
* The time range each week during which system maintenance can occur, in Universal Coordinated Time (UTC). *
*
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services * Region, occurring on a random day of the week. *
** Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun *
** Constraints: Minimum 30-minute window. *
* * @param preferredMaintenanceWindow * The time range each week during which system maintenance can occur, in Universal Coordinated Time * (UTC). *
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web * Services Region, occurring on a random day of the week. *
** Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun *
** Constraints: Minimum 30-minute window. */ public void setPreferredMaintenanceWindow(String preferredMaintenanceWindow) { this.preferredMaintenanceWindow = preferredMaintenanceWindow; } /** *
* The time range each week during which system maintenance can occur, in Universal Coordinated Time (UTC). *
*
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services * Region, occurring on a random day of the week. *
** Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun *
** Constraints: Minimum 30-minute window. *
* * @return The time range each week during which system maintenance can occur, in Universal Coordinated Time * (UTC). *
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web * Services Region, occurring on a random day of the week. *
** Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun *
** Constraints: Minimum 30-minute window. */ public String getPreferredMaintenanceWindow() { return this.preferredMaintenanceWindow; } /** *
* The time range each week during which system maintenance can occur, in Universal Coordinated Time (UTC). *
*
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web Services * Region, occurring on a random day of the week. *
** Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun *
** Constraints: Minimum 30-minute window. *
* * @param preferredMaintenanceWindow * The time range each week during which system maintenance can occur, in Universal Coordinated Time * (UTC). *
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Web * Services Region, occurring on a random day of the week. *
** Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun *
** Constraints: Minimum 30-minute window. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBInstanceRequest withPreferredMaintenanceWindow(String preferredMaintenanceWindow) { setPreferredMaintenanceWindow(preferredMaintenanceWindow); return this; } /** *
* This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB does not perform minor version upgrades * regardless of the value set. *
*
* Default: false
*
* Default: false
*/
public void setAutoMinorVersionUpgrade(Boolean autoMinorVersionUpgrade) {
this.autoMinorVersionUpgrade = autoMinorVersionUpgrade;
}
/**
*
* This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB does not perform minor version upgrades * regardless of the value set. *
*
* Default: false
*
* Default: false
*/
public Boolean getAutoMinorVersionUpgrade() {
return this.autoMinorVersionUpgrade;
}
/**
*
* This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB does not perform minor version upgrades * regardless of the value set. *
*
* Default: false
*
* Default: false
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDBInstanceRequest withAutoMinorVersionUpgrade(Boolean autoMinorVersionUpgrade) {
setAutoMinorVersionUpgrade(autoMinorVersionUpgrade);
return this;
}
/**
*
* This parameter does not apply to Amazon DocumentDB. Amazon DocumentDB does not perform minor version upgrades * regardless of the value set. *
*
* Default: false
*
* Default: false
*/
public Boolean isAutoMinorVersionUpgrade() {
return this.autoMinorVersionUpgrade;
}
/**
*
* The tags to be assigned to the instance. You can assign up to 10 tags to an instance. *
* * @return The tags to be assigned to the instance. You can assign up to 10 tags to an instance. */ public java.util.List* The tags to be assigned to the instance. You can assign up to 10 tags to an instance. *
* * @param tags * The tags to be assigned to the instance. You can assign up to 10 tags to an instance. */ public void setTags(java.util.Collection* The tags to be assigned to the instance. You can assign up to 10 tags to an instance. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setTags(java.util.Collection)} or {@link #withTags(java.util.Collection)} if you want to override the * existing values. *
* * @param tags * The tags to be assigned to the instance. You can assign up to 10 tags to an instance. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBInstanceRequest withTags(Tag... tags) { if (this.tags == null) { setTags(new java.util.ArrayList* The tags to be assigned to the instance. You can assign up to 10 tags to an instance. *
* * @param tags * The tags to be assigned to the instance. You can assign up to 10 tags to an instance. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBInstanceRequest withTags(java.util.Collection* The identifier of the cluster that the instance will belong to. *
* * @param dBClusterIdentifier * The identifier of the cluster that the instance will belong to. */ public void setDBClusterIdentifier(String dBClusterIdentifier) { this.dBClusterIdentifier = dBClusterIdentifier; } /** ** The identifier of the cluster that the instance will belong to. *
* * @return The identifier of the cluster that the instance will belong to. */ public String getDBClusterIdentifier() { return this.dBClusterIdentifier; } /** ** The identifier of the cluster that the instance will belong to. *
* * @param dBClusterIdentifier * The identifier of the cluster that the instance will belong to. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBInstanceRequest withDBClusterIdentifier(String dBClusterIdentifier) { setDBClusterIdentifier(dBClusterIdentifier); return this; } /** ** A value that indicates whether to copy tags from the DB instance to snapshots of the DB instance. By default, * tags are not copied. *
* * @param copyTagsToSnapshot * A value that indicates whether to copy tags from the DB instance to snapshots of the DB instance. By * default, tags are not copied. */ public void setCopyTagsToSnapshot(Boolean copyTagsToSnapshot) { this.copyTagsToSnapshot = copyTagsToSnapshot; } /** ** A value that indicates whether to copy tags from the DB instance to snapshots of the DB instance. By default, * tags are not copied. *
* * @return A value that indicates whether to copy tags from the DB instance to snapshots of the DB instance. By * default, tags are not copied. */ public Boolean getCopyTagsToSnapshot() { return this.copyTagsToSnapshot; } /** ** A value that indicates whether to copy tags from the DB instance to snapshots of the DB instance. By default, * tags are not copied. *
* * @param copyTagsToSnapshot * A value that indicates whether to copy tags from the DB instance to snapshots of the DB instance. By * default, tags are not copied. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBInstanceRequest withCopyTagsToSnapshot(Boolean copyTagsToSnapshot) { setCopyTagsToSnapshot(copyTagsToSnapshot); return this; } /** ** A value that indicates whether to copy tags from the DB instance to snapshots of the DB instance. By default, * tags are not copied. *
* * @return A value that indicates whether to copy tags from the DB instance to snapshots of the DB instance. By * default, tags are not copied. */ public Boolean isCopyTagsToSnapshot() { return this.copyTagsToSnapshot; } /** ** A value that specifies the order in which an Amazon DocumentDB replica is promoted to the primary instance after * a failure of the existing primary instance. *
** Default: 1 *
** Valid values: 0-15 *
* * @param promotionTier * A value that specifies the order in which an Amazon DocumentDB replica is promoted to the primary instance * after a failure of the existing primary instance. ** Default: 1 *
** Valid values: 0-15 */ public void setPromotionTier(Integer promotionTier) { this.promotionTier = promotionTier; } /** *
* A value that specifies the order in which an Amazon DocumentDB replica is promoted to the primary instance after * a failure of the existing primary instance. *
** Default: 1 *
** Valid values: 0-15 *
* * @return A value that specifies the order in which an Amazon DocumentDB replica is promoted to the primary * instance after a failure of the existing primary instance. ** Default: 1 *
** Valid values: 0-15 */ public Integer getPromotionTier() { return this.promotionTier; } /** *
* A value that specifies the order in which an Amazon DocumentDB replica is promoted to the primary instance after * a failure of the existing primary instance. *
** Default: 1 *
** Valid values: 0-15 *
* * @param promotionTier * A value that specifies the order in which an Amazon DocumentDB replica is promoted to the primary instance * after a failure of the existing primary instance. ** Default: 1 *
** Valid values: 0-15 * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBInstanceRequest withPromotionTier(Integer promotionTier) { setPromotionTier(promotionTier); return this; } /** *
* A value that indicates whether to enable Performance Insights for the DB Instance. For more information, see Using Amazon * Performance Insights. *
* * @param enablePerformanceInsights * A value that indicates whether to enable Performance Insights for the DB Instance. For more information, * see Using * Amazon Performance Insights. */ public void setEnablePerformanceInsights(Boolean enablePerformanceInsights) { this.enablePerformanceInsights = enablePerformanceInsights; } /** ** A value that indicates whether to enable Performance Insights for the DB Instance. For more information, see Using Amazon * Performance Insights. *
* * @return A value that indicates whether to enable Performance Insights for the DB Instance. For more information, * see Using * Amazon Performance Insights. */ public Boolean getEnablePerformanceInsights() { return this.enablePerformanceInsights; } /** ** A value that indicates whether to enable Performance Insights for the DB Instance. For more information, see Using Amazon * Performance Insights. *
* * @param enablePerformanceInsights * A value that indicates whether to enable Performance Insights for the DB Instance. For more information, * see Using * Amazon Performance Insights. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBInstanceRequest withEnablePerformanceInsights(Boolean enablePerformanceInsights) { setEnablePerformanceInsights(enablePerformanceInsights); return this; } /** ** A value that indicates whether to enable Performance Insights for the DB Instance. For more information, see Using Amazon * Performance Insights. *
* * @return A value that indicates whether to enable Performance Insights for the DB Instance. For more information, * see Using * Amazon Performance Insights. */ public Boolean isEnablePerformanceInsights() { return this.enablePerformanceInsights; } /** ** The KMS key identifier for encryption of Performance Insights data. *
** The KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. *
** If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default KMS key. * There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different * default KMS key for each Amazon Web Services region. *
* * @param performanceInsightsKMSKeyId * The KMS key identifier for encryption of Performance Insights data. ** The KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. *
** If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default * KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account * has a different default KMS key for each Amazon Web Services region. */ public void setPerformanceInsightsKMSKeyId(String performanceInsightsKMSKeyId) { this.performanceInsightsKMSKeyId = performanceInsightsKMSKeyId; } /** *
* The KMS key identifier for encryption of Performance Insights data. *
** The KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. *
** If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default KMS key. * There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different * default KMS key for each Amazon Web Services region. *
* * @return The KMS key identifier for encryption of Performance Insights data. ** The KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. *
** If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default * KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services * account has a different default KMS key for each Amazon Web Services region. */ public String getPerformanceInsightsKMSKeyId() { return this.performanceInsightsKMSKeyId; } /** *
* The KMS key identifier for encryption of Performance Insights data. *
** The KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. *
** If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default KMS key. * There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account has a different * default KMS key for each Amazon Web Services region. *
* * @param performanceInsightsKMSKeyId * The KMS key identifier for encryption of Performance Insights data. ** The KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. *
** If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default * KMS key. There is a default KMS key for your Amazon Web Services account. Your Amazon Web Services account * has a different default KMS key for each Amazon Web Services region. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBInstanceRequest withPerformanceInsightsKMSKeyId(String performanceInsightsKMSKeyId) { setPerformanceInsightsKMSKeyId(performanceInsightsKMSKeyId); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getDBInstanceIdentifier() != null) sb.append("DBInstanceIdentifier: ").append(getDBInstanceIdentifier()).append(","); if (getDBInstanceClass() != null) sb.append("DBInstanceClass: ").append(getDBInstanceClass()).append(","); if (getEngine() != null) sb.append("Engine: ").append(getEngine()).append(","); if (getAvailabilityZone() != null) sb.append("AvailabilityZone: ").append(getAvailabilityZone()).append(","); if (getPreferredMaintenanceWindow() != null) sb.append("PreferredMaintenanceWindow: ").append(getPreferredMaintenanceWindow()).append(","); if (getAutoMinorVersionUpgrade() != null) sb.append("AutoMinorVersionUpgrade: ").append(getAutoMinorVersionUpgrade()).append(","); if (getTags() != null) sb.append("Tags: ").append(getTags()).append(","); if (getDBClusterIdentifier() != null) sb.append("DBClusterIdentifier: ").append(getDBClusterIdentifier()).append(","); if (getCopyTagsToSnapshot() != null) sb.append("CopyTagsToSnapshot: ").append(getCopyTagsToSnapshot()).append(","); if (getPromotionTier() != null) sb.append("PromotionTier: ").append(getPromotionTier()).append(","); if (getEnablePerformanceInsights() != null) sb.append("EnablePerformanceInsights: ").append(getEnablePerformanceInsights()).append(","); if (getPerformanceInsightsKMSKeyId() != null) sb.append("PerformanceInsightsKMSKeyId: ").append(getPerformanceInsightsKMSKeyId()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateDBInstanceRequest == false) return false; CreateDBInstanceRequest other = (CreateDBInstanceRequest) obj; if (other.getDBInstanceIdentifier() == null ^ this.getDBInstanceIdentifier() == null) return false; if (other.getDBInstanceIdentifier() != null && other.getDBInstanceIdentifier().equals(this.getDBInstanceIdentifier()) == false) return false; if (other.getDBInstanceClass() == null ^ this.getDBInstanceClass() == null) return false; if (other.getDBInstanceClass() != null && other.getDBInstanceClass().equals(this.getDBInstanceClass()) == 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.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.getAutoMinorVersionUpgrade() == null ^ this.getAutoMinorVersionUpgrade() == null) return false; if (other.getAutoMinorVersionUpgrade() != null && other.getAutoMinorVersionUpgrade().equals(this.getAutoMinorVersionUpgrade()) == 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.getDBClusterIdentifier() == null ^ this.getDBClusterIdentifier() == null) return false; if (other.getDBClusterIdentifier() != null && other.getDBClusterIdentifier().equals(this.getDBClusterIdentifier()) == false) return false; if (other.getCopyTagsToSnapshot() == null ^ this.getCopyTagsToSnapshot() == null) return false; if (other.getCopyTagsToSnapshot() != null && other.getCopyTagsToSnapshot().equals(this.getCopyTagsToSnapshot()) == false) return false; if (other.getPromotionTier() == null ^ this.getPromotionTier() == null) return false; if (other.getPromotionTier() != null && other.getPromotionTier().equals(this.getPromotionTier()) == false) return false; if (other.getEnablePerformanceInsights() == null ^ this.getEnablePerformanceInsights() == null) return false; if (other.getEnablePerformanceInsights() != null && other.getEnablePerformanceInsights().equals(this.getEnablePerformanceInsights()) == false) return false; if (other.getPerformanceInsightsKMSKeyId() == null ^ this.getPerformanceInsightsKMSKeyId() == null) return false; if (other.getPerformanceInsightsKMSKeyId() != null && other.getPerformanceInsightsKMSKeyId().equals(this.getPerformanceInsightsKMSKeyId()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getDBInstanceIdentifier() == null) ? 0 : getDBInstanceIdentifier().hashCode()); hashCode = prime * hashCode + ((getDBInstanceClass() == null) ? 0 : getDBInstanceClass().hashCode()); hashCode = prime * hashCode + ((getEngine() == null) ? 0 : getEngine().hashCode()); hashCode = prime * hashCode + ((getAvailabilityZone() == null) ? 0 : getAvailabilityZone().hashCode()); hashCode = prime * hashCode + ((getPreferredMaintenanceWindow() == null) ? 0 : getPreferredMaintenanceWindow().hashCode()); hashCode = prime * hashCode + ((getAutoMinorVersionUpgrade() == null) ? 0 : getAutoMinorVersionUpgrade().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); hashCode = prime * hashCode + ((getDBClusterIdentifier() == null) ? 0 : getDBClusterIdentifier().hashCode()); hashCode = prime * hashCode + ((getCopyTagsToSnapshot() == null) ? 0 : getCopyTagsToSnapshot().hashCode()); hashCode = prime * hashCode + ((getPromotionTier() == null) ? 0 : getPromotionTier().hashCode()); hashCode = prime * hashCode + ((getEnablePerformanceInsights() == null) ? 0 : getEnablePerformanceInsights().hashCode()); hashCode = prime * hashCode + ((getPerformanceInsightsKMSKeyId() == null) ? 0 : getPerformanceInsightsKMSKeyId().hashCode()); return hashCode; } @Override public CreateDBInstanceRequest clone() { return (CreateDBInstanceRequest) super.clone(); } }