/* * 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.neptune.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.AmazonWebServiceRequest; /** * * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class CreateDBClusterRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** *
* A list of EC2 Availability Zones that instances in the DB cluster can be created in. *
*/ private java.util.List* The number of days for which automated backups are retained. You must specify a minimum value of 1. *
** Default: 1 *
** Constraints: *
** Must be a value from 1 to 35 *
** (Not supported by Neptune) *
*/ private String characterSetName; /** *
* If set to true
, tags are copied to any snapshot of the DB cluster that is created.
*
* The name for your database of up to 64 alpha-numeric characters. If you do not provide a name, Amazon Neptune * will not create a database in the DB cluster you are creating. *
*/ private String databaseName; /** ** The DB cluster identifier. This parameter is stored as a lowercase string. *
** Constraints: *
** Must contain from 1 to 63 letters, numbers, or hyphens. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
*
* Example: my-cluster1
*
* The name of the DB cluster parameter group to associate with this DB cluster. If this argument is omitted, the * default is used. *
** Constraints: *
** If supplied, must match the name of an existing DBClusterParameterGroup. *
** A list of EC2 VPC security groups to associate with this DB cluster. *
*/ private java.util.List* A DB subnet group to associate with this DB cluster. *
** Constraints: Must match the name of an existing DBSubnetGroup. Must not be default. *
*
* Example: mySubnetgroup
*
* The name of the database engine to be used for this DB cluster. *
*
* Valid Values: neptune
*
* The version number of the database engine to use for the new DB cluster. *
*
* Example: 1.0.2.1
*
* The port number on which the instances in the DB cluster accept connections. *
*
* Default: 8182
*
* Not supported by Neptune. *
*/ private String masterUsername; /** ** Not supported by Neptune. *
*/ private String masterUserPassword; /** ** (Not supported by Neptune) *
*/ private String optionGroupName; /** *
* The daily time range during which automated backups are created if automated backups are enabled using the
* BackupRetentionPeriod
parameter.
*
* The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Region. To see * the time blocks available, see Adjusting the * Preferred Maintenance Window in the Amazon Neptune User Guide. *
** Constraints: *
*
* Must be in the format hh24:mi-hh24:mi
.
*
* Must be in Universal Coordinated Time (UTC). *
** Must not conflict with the preferred maintenance window. *
** Must be at least 30 minutes. *
** The weekly time range 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 Region, * occurring on a random day of the week. To see the time blocks available, see Adjusting the * Preferred Maintenance Window in the Amazon Neptune User Guide. *
** Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun. *
** Constraints: Minimum 30-minute window. *
*/ private String preferredMaintenanceWindow; /** ** The Amazon Resource Name (ARN) of the source DB instance or DB cluster if this DB cluster is created as a Read * Replica. *
*/ private String replicationSourceIdentifier; /** ** The tags to assign to the new DB cluster. *
*/ private java.util.List* Specifies whether the DB cluster is encrypted. *
*/ private Boolean storageEncrypted; /** ** The Amazon KMS key identifier for an encrypted DB cluster. *
** The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a DB * cluster with the same Amazon account that owns the KMS encryption key used to encrypt the new DB cluster, then * you can use the KMS key alias instead of the ARN for the KMS encryption key. *
*
* If an encryption key is not specified in KmsKeyId
:
*
* If ReplicationSourceIdentifier
identifies an encrypted source, then Amazon Neptune will use the
* encryption key used to encrypt the source. Otherwise, Amazon Neptune will use your default encryption key.
*
* If the StorageEncrypted
parameter is true and ReplicationSourceIdentifier
is not
* specified, then Amazon Neptune will use your default encryption key.
*
* Amazon KMS creates the default encryption key for your Amazon account. Your Amazon account has a different * default encryption key for each Amazon Region. *
*
* If you create a Read Replica of an encrypted DB cluster in another Amazon Region, you must set
* KmsKeyId
to a KMS key ID that is valid in the destination Amazon Region. This key is used to encrypt
* the Read Replica in that Amazon Region.
*
* This parameter is not currently supported. *
*/ private String preSignedUrl; /** *
* If set to true
, enables Amazon Identity and Access Management (IAM) authentication for the entire DB
* cluster (this cannot be set at an instance level).
*
* Default: false
.
*
* The list of log types that need to be enabled for exporting to CloudWatch Logs. *
*/ private java.util.List* A value that indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when * deletion protection is enabled. By default, deletion protection is enabled. *
*/ private Boolean deletionProtection; private ServerlessV2ScalingConfiguration serverlessV2ScalingConfiguration; /** ** The ID of the Neptune global database to which this new DB cluster should be added. *
*/ private String globalClusterIdentifier; /** The region where the source instance is located. */ private String sourceRegion; /** ** A list of EC2 Availability Zones that instances in the DB cluster can be created in. *
* * @return A list of EC2 Availability Zones that instances in the DB cluster can be created in. */ public java.util.List* A list of EC2 Availability Zones that instances in the DB cluster can be created in. *
* * @param availabilityZones * A list of EC2 Availability Zones that instances in the DB cluster can be created in. */ public void setAvailabilityZones(java.util.Collection* A list of EC2 Availability Zones that instances in the DB 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 * A list of EC2 Availability Zones that instances in the DB cluster can be created in. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withAvailabilityZones(String... availabilityZones) { if (this.availabilityZones == null) { setAvailabilityZones(new java.util.ArrayList* A list of EC2 Availability Zones that instances in the DB cluster can be created in. *
* * @param availabilityZones * A list of EC2 Availability Zones that instances in the DB cluster can be created in. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withAvailabilityZones(java.util.Collection* The number of days for which automated backups are retained. You must specify a minimum value of 1. *
** Default: 1 *
** Constraints: *
** Must be a value from 1 to 35 *
** Default: 1 *
** Constraints: *
** Must be a value from 1 to 35 *
** The number of days for which automated backups are retained. You must specify a minimum value of 1. *
** Default: 1 *
** Constraints: *
** Must be a value from 1 to 35 *
** Default: 1 *
** Constraints: *
** Must be a value from 1 to 35 *
** The number of days for which automated backups are retained. You must specify a minimum value of 1. *
** Default: 1 *
** Constraints: *
** Must be a value from 1 to 35 *
** Default: 1 *
** Constraints: *
** Must be a value from 1 to 35 *
** (Not supported by Neptune) *
* * @param characterSetName * (Not supported by Neptune) */ public void setCharacterSetName(String characterSetName) { this.characterSetName = characterSetName; } /** ** (Not supported by Neptune) *
* * @return (Not supported by Neptune) */ public String getCharacterSetName() { return this.characterSetName; } /** ** (Not supported by Neptune) *
* * @param characterSetName * (Not supported by Neptune) * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withCharacterSetName(String characterSetName) { setCharacterSetName(characterSetName); return this; } /** *
* If set to true
, tags are copied to any snapshot of the DB cluster that is created.
*
true
, tags are copied to any snapshot of the DB cluster that is created.
*/
public void setCopyTagsToSnapshot(Boolean copyTagsToSnapshot) {
this.copyTagsToSnapshot = copyTagsToSnapshot;
}
/**
*
* If set to true
, tags are copied to any snapshot of the DB cluster that is created.
*
true
, tags are copied to any snapshot of the DB cluster that is created.
*/
public Boolean getCopyTagsToSnapshot() {
return this.copyTagsToSnapshot;
}
/**
*
* If set to true
, tags are copied to any snapshot of the DB cluster that is created.
*
true
, tags are copied to any snapshot of the DB cluster that is created.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDBClusterRequest withCopyTagsToSnapshot(Boolean copyTagsToSnapshot) {
setCopyTagsToSnapshot(copyTagsToSnapshot);
return this;
}
/**
*
* If set to true
, tags are copied to any snapshot of the DB cluster that is created.
*
true
, tags are copied to any snapshot of the DB cluster that is created.
*/
public Boolean isCopyTagsToSnapshot() {
return this.copyTagsToSnapshot;
}
/**
* * The name for your database of up to 64 alpha-numeric characters. If you do not provide a name, Amazon Neptune * will not create a database in the DB cluster you are creating. *
* * @param databaseName * The name for your database of up to 64 alpha-numeric characters. If you do not provide a name, Amazon * Neptune will not create a database in the DB cluster you are creating. */ public void setDatabaseName(String databaseName) { this.databaseName = databaseName; } /** ** The name for your database of up to 64 alpha-numeric characters. If you do not provide a name, Amazon Neptune * will not create a database in the DB cluster you are creating. *
* * @return The name for your database of up to 64 alpha-numeric characters. If you do not provide a name, Amazon * Neptune will not create a database in the DB cluster you are creating. */ public String getDatabaseName() { return this.databaseName; } /** ** The name for your database of up to 64 alpha-numeric characters. If you do not provide a name, Amazon Neptune * will not create a database in the DB cluster you are creating. *
* * @param databaseName * The name for your database of up to 64 alpha-numeric characters. If you do not provide a name, Amazon * Neptune will not create a database in the DB cluster you are creating. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withDatabaseName(String databaseName) { setDatabaseName(databaseName); return this; } /** ** The DB cluster identifier. This parameter is stored as a lowercase string. *
** Constraints: *
** Must contain from 1 to 63 letters, numbers, or hyphens. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
*
* Example: my-cluster1
*
* Constraints: *
** Must contain from 1 to 63 letters, numbers, or hyphens. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
*
* Example: my-cluster1
*/
public void setDBClusterIdentifier(String dBClusterIdentifier) {
this.dBClusterIdentifier = dBClusterIdentifier;
}
/**
*
* The DB cluster identifier. This parameter is stored as a lowercase string. *
** Constraints: *
** Must contain from 1 to 63 letters, numbers, or hyphens. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
*
* Example: my-cluster1
*
* Constraints: *
** Must contain from 1 to 63 letters, numbers, or hyphens. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
*
* Example: my-cluster1
*/
public String getDBClusterIdentifier() {
return this.dBClusterIdentifier;
}
/**
*
* The DB cluster identifier. This parameter is stored as a lowercase string. *
** Constraints: *
** Must contain from 1 to 63 letters, numbers, or hyphens. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
*
* Example: my-cluster1
*
* Constraints: *
** Must contain from 1 to 63 letters, numbers, or hyphens. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
*
* Example: my-cluster1
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDBClusterRequest withDBClusterIdentifier(String dBClusterIdentifier) {
setDBClusterIdentifier(dBClusterIdentifier);
return this;
}
/**
*
* The name of the DB cluster parameter group to associate with this DB cluster. If this argument is omitted, the * default is used. *
** Constraints: *
** If supplied, must match the name of an existing DBClusterParameterGroup. *
** Constraints: *
** If supplied, must match the name of an existing DBClusterParameterGroup. *
** The name of the DB cluster parameter group to associate with this DB cluster. If this argument is omitted, the * default is used. *
** Constraints: *
** If supplied, must match the name of an existing DBClusterParameterGroup. *
** Constraints: *
** If supplied, must match the name of an existing DBClusterParameterGroup. *
** The name of the DB cluster parameter group to associate with this DB cluster. If this argument is omitted, the * default is used. *
** Constraints: *
** If supplied, must match the name of an existing DBClusterParameterGroup. *
** Constraints: *
** If supplied, must match the name of an existing DBClusterParameterGroup. *
** A list of EC2 VPC security groups to associate with this DB cluster. *
* * @return A list of EC2 VPC security groups to associate with this DB cluster. */ public java.util.List* A list of EC2 VPC security groups to associate with this DB cluster. *
* * @param vpcSecurityGroupIds * A list of EC2 VPC security groups to associate with this DB cluster. */ public void setVpcSecurityGroupIds(java.util.Collection* A list of EC2 VPC security groups to associate with this DB cluster. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setVpcSecurityGroupIds(java.util.Collection)} or {@link #withVpcSecurityGroupIds(java.util.Collection)} * if you want to override the existing values. *
* * @param vpcSecurityGroupIds * A list of EC2 VPC security groups to associate with this DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withVpcSecurityGroupIds(String... vpcSecurityGroupIds) { if (this.vpcSecurityGroupIds == null) { setVpcSecurityGroupIds(new java.util.ArrayList* A list of EC2 VPC security groups to associate with this DB cluster. *
* * @param vpcSecurityGroupIds * A list of EC2 VPC security groups to associate with this DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withVpcSecurityGroupIds(java.util.Collection* A DB subnet group to associate with this DB cluster. *
** Constraints: Must match the name of an existing DBSubnetGroup. Must not be default. *
*
* Example: mySubnetgroup
*
* Constraints: Must match the name of an existing DBSubnetGroup. Must not be default. *
*
* Example: mySubnetgroup
*/
public void setDBSubnetGroupName(String dBSubnetGroupName) {
this.dBSubnetGroupName = dBSubnetGroupName;
}
/**
*
* A DB subnet group to associate with this DB cluster. *
** Constraints: Must match the name of an existing DBSubnetGroup. Must not be default. *
*
* Example: mySubnetgroup
*
* Constraints: Must match the name of an existing DBSubnetGroup. Must not be default. *
*
* Example: mySubnetgroup
*/
public String getDBSubnetGroupName() {
return this.dBSubnetGroupName;
}
/**
*
* A DB subnet group to associate with this DB cluster. *
** Constraints: Must match the name of an existing DBSubnetGroup. Must not be default. *
*
* Example: mySubnetgroup
*
* Constraints: Must match the name of an existing DBSubnetGroup. Must not be default. *
*
* Example: mySubnetgroup
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDBClusterRequest withDBSubnetGroupName(String dBSubnetGroupName) {
setDBSubnetGroupName(dBSubnetGroupName);
return this;
}
/**
*
* The name of the database engine to be used for this DB cluster. *
*
* Valid Values: neptune
*
* Valid Values: neptune
*/
public void setEngine(String engine) {
this.engine = engine;
}
/**
*
* The name of the database engine to be used for this DB cluster. *
*
* Valid Values: neptune
*
* Valid Values: neptune
*/
public String getEngine() {
return this.engine;
}
/**
*
* The name of the database engine to be used for this DB cluster. *
*
* Valid Values: neptune
*
* Valid Values: neptune
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDBClusterRequest withEngine(String engine) {
setEngine(engine);
return this;
}
/**
*
* The version number of the database engine to use for the new DB cluster. *
*
* Example: 1.0.2.1
*
* Example: 1.0.2.1
*/
public void setEngineVersion(String engineVersion) {
this.engineVersion = engineVersion;
}
/**
*
* The version number of the database engine to use for the new DB cluster. *
*
* Example: 1.0.2.1
*
* Example: 1.0.2.1
*/
public String getEngineVersion() {
return this.engineVersion;
}
/**
*
* The version number of the database engine to use for the new DB cluster. *
*
* Example: 1.0.2.1
*
* Example: 1.0.2.1
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDBClusterRequest withEngineVersion(String engineVersion) {
setEngineVersion(engineVersion);
return this;
}
/**
*
* The port number on which the instances in the DB cluster accept connections. *
*
* Default: 8182
*
* Default: 8182
*/
public void setPort(Integer port) {
this.port = port;
}
/**
*
* The port number on which the instances in the DB cluster accept connections. *
*
* Default: 8182
*
* Default: 8182
*/
public Integer getPort() {
return this.port;
}
/**
*
* The port number on which the instances in the DB cluster accept connections. *
*
* Default: 8182
*
* Default: 8182
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDBClusterRequest withPort(Integer port) {
setPort(port);
return this;
}
/**
*
* Not supported by Neptune. *
* * @param masterUsername * Not supported by Neptune. */ public void setMasterUsername(String masterUsername) { this.masterUsername = masterUsername; } /** ** Not supported by Neptune. *
* * @return Not supported by Neptune. */ public String getMasterUsername() { return this.masterUsername; } /** ** Not supported by Neptune. *
* * @param masterUsername * Not supported by Neptune. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withMasterUsername(String masterUsername) { setMasterUsername(masterUsername); return this; } /** ** Not supported by Neptune. *
* * @param masterUserPassword * Not supported by Neptune. */ public void setMasterUserPassword(String masterUserPassword) { this.masterUserPassword = masterUserPassword; } /** ** Not supported by Neptune. *
* * @return Not supported by Neptune. */ public String getMasterUserPassword() { return this.masterUserPassword; } /** ** Not supported by Neptune. *
* * @param masterUserPassword * Not supported by Neptune. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withMasterUserPassword(String masterUserPassword) { setMasterUserPassword(masterUserPassword); return this; } /** ** (Not supported by Neptune) *
* * @param optionGroupName * (Not supported by Neptune) */ public void setOptionGroupName(String optionGroupName) { this.optionGroupName = optionGroupName; } /** ** (Not supported by Neptune) *
* * @return (Not supported by Neptune) */ public String getOptionGroupName() { return this.optionGroupName; } /** ** (Not supported by Neptune) *
* * @param optionGroupName * (Not supported by Neptune) * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withOptionGroupName(String optionGroupName) { setOptionGroupName(optionGroupName); return this; } /** *
* The daily time range during which automated backups are created if automated backups are enabled using the
* BackupRetentionPeriod
parameter.
*
* The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Region. To see * the time blocks available, see Adjusting the * Preferred Maintenance Window in the Amazon Neptune User Guide. *
** Constraints: *
*
* Must be in the format hh24:mi-hh24:mi
.
*
* Must be in Universal Coordinated Time (UTC). *
** Must not conflict with the preferred maintenance window. *
** Must be at least 30 minutes. *
*BackupRetentionPeriod
parameter.
* * The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Region. * To see the time blocks available, see * Adjusting the Preferred Maintenance Window in the Amazon Neptune User Guide. *
** Constraints: *
*
* Must be in the format hh24:mi-hh24:mi
.
*
* Must be in Universal Coordinated Time (UTC). *
** Must not conflict with the preferred maintenance window. *
** Must be at least 30 minutes. *
*
* The daily time range during which automated backups are created if automated backups are enabled using the
* BackupRetentionPeriod
parameter.
*
* The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Region. To see * the time blocks available, see Adjusting the * Preferred Maintenance Window in the Amazon Neptune User Guide. *
** Constraints: *
*
* Must be in the format hh24:mi-hh24:mi
.
*
* Must be in Universal Coordinated Time (UTC). *
** Must not conflict with the preferred maintenance window. *
** Must be at least 30 minutes. *
*BackupRetentionPeriod
parameter.
* * The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Region. * To see the time blocks available, see * Adjusting the Preferred Maintenance Window in the Amazon Neptune User Guide. *
** Constraints: *
*
* Must be in the format hh24:mi-hh24:mi
.
*
* Must be in Universal Coordinated Time (UTC). *
** Must not conflict with the preferred maintenance window. *
** Must be at least 30 minutes. *
*
* The daily time range during which automated backups are created if automated backups are enabled using the
* BackupRetentionPeriod
parameter.
*
* The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Region. To see * the time blocks available, see Adjusting the * Preferred Maintenance Window in the Amazon Neptune User Guide. *
** Constraints: *
*
* Must be in the format hh24:mi-hh24:mi
.
*
* Must be in Universal Coordinated Time (UTC). *
** Must not conflict with the preferred maintenance window. *
** Must be at least 30 minutes. *
*BackupRetentionPeriod
parameter.
* * The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Region. * To see the time blocks available, see * Adjusting the Preferred Maintenance Window in the Amazon Neptune User Guide. *
** Constraints: *
*
* Must be in the format hh24:mi-hh24:mi
.
*
* Must be in Universal Coordinated Time (UTC). *
** Must not conflict with the preferred maintenance window. *
** Must be at least 30 minutes. *
** The weekly time range 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 Region, * occurring on a random day of the week. To see the time blocks available, see Adjusting the * Preferred Maintenance Window in the Amazon Neptune User Guide. *
** Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun. *
** Constraints: Minimum 30-minute window. *
* * @param preferredMaintenanceWindow * The weekly time range 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 Region, * occurring on a random day of the week. To see the time blocks available, see * Adjusting the Preferred Maintenance Window in the Amazon Neptune User Guide. *
** Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun. *
** Constraints: Minimum 30-minute window. */ public void setPreferredMaintenanceWindow(String preferredMaintenanceWindow) { this.preferredMaintenanceWindow = preferredMaintenanceWindow; } /** *
* The weekly time range 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 Region, * occurring on a random day of the week. To see the time blocks available, see Adjusting the * Preferred Maintenance Window in the Amazon Neptune User Guide. *
** Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun. *
** Constraints: Minimum 30-minute window. *
* * @return The weekly time range 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 Region, * occurring on a random day of the week. To see the time blocks available, see * Adjusting the Preferred Maintenance Window in the Amazon Neptune User Guide. *
** Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun. *
** Constraints: Minimum 30-minute window. */ public String getPreferredMaintenanceWindow() { return this.preferredMaintenanceWindow; } /** *
* The weekly time range 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 Region, * occurring on a random day of the week. To see the time blocks available, see Adjusting the * Preferred Maintenance Window in the Amazon Neptune User Guide. *
** Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun. *
** Constraints: Minimum 30-minute window. *
* * @param preferredMaintenanceWindow * The weekly time range 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 Region, * occurring on a random day of the week. To see the time blocks available, see * Adjusting the Preferred Maintenance Window in the Amazon Neptune User Guide. *
** 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 CreateDBClusterRequest withPreferredMaintenanceWindow(String preferredMaintenanceWindow) { setPreferredMaintenanceWindow(preferredMaintenanceWindow); return this; } /** *
* The Amazon Resource Name (ARN) of the source DB instance or DB cluster if this DB cluster is created as a Read * Replica. *
* * @param replicationSourceIdentifier * The Amazon Resource Name (ARN) of the source DB instance or DB cluster if this DB cluster is created as a * Read Replica. */ public void setReplicationSourceIdentifier(String replicationSourceIdentifier) { this.replicationSourceIdentifier = replicationSourceIdentifier; } /** ** The Amazon Resource Name (ARN) of the source DB instance or DB cluster if this DB cluster is created as a Read * Replica. *
* * @return The Amazon Resource Name (ARN) of the source DB instance or DB cluster if this DB cluster is created as a * Read Replica. */ public String getReplicationSourceIdentifier() { return this.replicationSourceIdentifier; } /** ** The Amazon Resource Name (ARN) of the source DB instance or DB cluster if this DB cluster is created as a Read * Replica. *
* * @param replicationSourceIdentifier * The Amazon Resource Name (ARN) of the source DB instance or DB cluster if this DB cluster is created as a * Read Replica. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withReplicationSourceIdentifier(String replicationSourceIdentifier) { setReplicationSourceIdentifier(replicationSourceIdentifier); return this; } /** ** The tags to assign to the new DB cluster. *
* * @return The tags to assign to the new DB cluster. */ public java.util.List* The tags to assign to the new DB cluster. *
* * @param tags * The tags to assign to the new DB cluster. */ public void setTags(java.util.Collection* The tags to assign to the new DB 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 tags to assign to the new DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withTags(Tag... tags) { if (this.tags == null) { setTags(new java.util.ArrayList* The tags to assign to the new DB cluster. *
* * @param tags * The tags to assign to the new DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withTags(java.util.Collection* Specifies whether the DB cluster is encrypted. *
* * @param storageEncrypted * Specifies whether the DB cluster is encrypted. */ public void setStorageEncrypted(Boolean storageEncrypted) { this.storageEncrypted = storageEncrypted; } /** ** Specifies whether the DB cluster is encrypted. *
* * @return Specifies whether the DB cluster is encrypted. */ public Boolean getStorageEncrypted() { return this.storageEncrypted; } /** ** Specifies whether the DB cluster is encrypted. *
* * @param storageEncrypted * Specifies whether the DB cluster is encrypted. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withStorageEncrypted(Boolean storageEncrypted) { setStorageEncrypted(storageEncrypted); return this; } /** ** Specifies whether the DB cluster is encrypted. *
* * @return Specifies whether the DB cluster is encrypted. */ public Boolean isStorageEncrypted() { return this.storageEncrypted; } /** ** The Amazon KMS key identifier for an encrypted DB cluster. *
** The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a DB * cluster with the same Amazon account that owns the KMS encryption key used to encrypt the new DB cluster, then * you can use the KMS key alias instead of the ARN for the KMS encryption key. *
*
* If an encryption key is not specified in KmsKeyId
:
*
* If ReplicationSourceIdentifier
identifies an encrypted source, then Amazon Neptune will use the
* encryption key used to encrypt the source. Otherwise, Amazon Neptune will use your default encryption key.
*
* If the StorageEncrypted
parameter is true and ReplicationSourceIdentifier
is not
* specified, then Amazon Neptune will use your default encryption key.
*
* Amazon KMS creates the default encryption key for your Amazon account. Your Amazon account has a different * default encryption key for each Amazon Region. *
*
* If you create a Read Replica of an encrypted DB cluster in another Amazon Region, you must set
* KmsKeyId
to a KMS key ID that is valid in the destination Amazon Region. This key is used to encrypt
* the Read Replica in that Amazon Region.
*
* The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a * DB cluster with the same Amazon account that owns the KMS encryption key used to encrypt the new DB * cluster, then you can use the KMS key alias instead of the ARN for the KMS encryption key. *
*
* If an encryption key is not specified in KmsKeyId
:
*
* If ReplicationSourceIdentifier
identifies an encrypted source, then Amazon Neptune will use
* the encryption key used to encrypt the source. Otherwise, Amazon Neptune will use your default encryption
* key.
*
* If the StorageEncrypted
parameter is true and ReplicationSourceIdentifier
is not
* specified, then Amazon Neptune will use your default encryption key.
*
* Amazon KMS creates the default encryption key for your Amazon account. Your Amazon account has a different * default encryption key for each Amazon Region. *
*
* If you create a Read Replica of an encrypted DB cluster in another Amazon Region, you must set
* KmsKeyId
to a KMS key ID that is valid in the destination Amazon Region. This key is used to
* encrypt the Read Replica in that Amazon Region.
*/
public void setKmsKeyId(String kmsKeyId) {
this.kmsKeyId = kmsKeyId;
}
/**
*
* The Amazon KMS key identifier for an encrypted DB cluster. *
** The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a DB * cluster with the same Amazon account that owns the KMS encryption key used to encrypt the new DB cluster, then * you can use the KMS key alias instead of the ARN for the KMS encryption key. *
*
* If an encryption key is not specified in KmsKeyId
:
*
* If ReplicationSourceIdentifier
identifies an encrypted source, then Amazon Neptune will use the
* encryption key used to encrypt the source. Otherwise, Amazon Neptune will use your default encryption key.
*
* If the StorageEncrypted
parameter is true and ReplicationSourceIdentifier
is not
* specified, then Amazon Neptune will use your default encryption key.
*
* Amazon KMS creates the default encryption key for your Amazon account. Your Amazon account has a different * default encryption key for each Amazon Region. *
*
* If you create a Read Replica of an encrypted DB cluster in another Amazon Region, you must set
* KmsKeyId
to a KMS key ID that is valid in the destination Amazon Region. This key is used to encrypt
* the Read Replica in that Amazon Region.
*
* The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating * a DB cluster with the same Amazon account that owns the KMS encryption key used to encrypt the new DB * cluster, then you can use the KMS key alias instead of the ARN for the KMS encryption key. *
*
* If an encryption key is not specified in KmsKeyId
:
*
* If ReplicationSourceIdentifier
identifies an encrypted source, then Amazon Neptune will use
* the encryption key used to encrypt the source. Otherwise, Amazon Neptune will use your default encryption
* key.
*
* If the StorageEncrypted
parameter is true and ReplicationSourceIdentifier
is
* not specified, then Amazon Neptune will use your default encryption key.
*
* Amazon KMS creates the default encryption key for your Amazon account. Your Amazon account has a * different default encryption key for each Amazon Region. *
*
* If you create a Read Replica of an encrypted DB cluster in another Amazon Region, you must set
* KmsKeyId
to a KMS key ID that is valid in the destination Amazon Region. This key is used to
* encrypt the Read Replica in that Amazon Region.
*/
public String getKmsKeyId() {
return this.kmsKeyId;
}
/**
*
* The Amazon KMS key identifier for an encrypted DB cluster. *
** The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a DB * cluster with the same Amazon account that owns the KMS encryption key used to encrypt the new DB cluster, then * you can use the KMS key alias instead of the ARN for the KMS encryption key. *
*
* If an encryption key is not specified in KmsKeyId
:
*
* If ReplicationSourceIdentifier
identifies an encrypted source, then Amazon Neptune will use the
* encryption key used to encrypt the source. Otherwise, Amazon Neptune will use your default encryption key.
*
* If the StorageEncrypted
parameter is true and ReplicationSourceIdentifier
is not
* specified, then Amazon Neptune will use your default encryption key.
*
* Amazon KMS creates the default encryption key for your Amazon account. Your Amazon account has a different * default encryption key for each Amazon Region. *
*
* If you create a Read Replica of an encrypted DB cluster in another Amazon Region, you must set
* KmsKeyId
to a KMS key ID that is valid in the destination Amazon Region. This key is used to encrypt
* the Read Replica in that Amazon Region.
*
* The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a * DB cluster with the same Amazon account that owns the KMS encryption key used to encrypt the new DB * cluster, then you can use the KMS key alias instead of the ARN for the KMS encryption key. *
*
* If an encryption key is not specified in KmsKeyId
:
*
* If ReplicationSourceIdentifier
identifies an encrypted source, then Amazon Neptune will use
* the encryption key used to encrypt the source. Otherwise, Amazon Neptune will use your default encryption
* key.
*
* If the StorageEncrypted
parameter is true and ReplicationSourceIdentifier
is not
* specified, then Amazon Neptune will use your default encryption key.
*
* Amazon KMS creates the default encryption key for your Amazon account. Your Amazon account has a different * default encryption key for each Amazon Region. *
*
* If you create a Read Replica of an encrypted DB cluster in another Amazon Region, you must set
* KmsKeyId
to a KMS key ID that is valid in the destination Amazon Region. This key is used to
* encrypt the Read Replica in that Amazon Region.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDBClusterRequest withKmsKeyId(String kmsKeyId) {
setKmsKeyId(kmsKeyId);
return this;
}
/**
*
* This parameter is not currently supported. *
* * @param preSignedUrl * This parameter is not currently supported. */ public void setPreSignedUrl(String preSignedUrl) { this.preSignedUrl = preSignedUrl; } /** ** This parameter is not currently supported. *
* * @return This parameter is not currently supported. */ public String getPreSignedUrl() { return this.preSignedUrl; } /** ** This parameter is not currently supported. *
* * @param preSignedUrl * This parameter is not currently supported. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withPreSignedUrl(String preSignedUrl) { setPreSignedUrl(preSignedUrl); return this; } /** *
* If set to true
, enables Amazon Identity and Access Management (IAM) authentication for the entire DB
* cluster (this cannot be set at an instance level).
*
* Default: false
.
*
true
, enables Amazon Identity and Access Management (IAM) authentication for the
* entire DB cluster (this cannot be set at an instance level).
*
* Default: false
.
*/
public void setEnableIAMDatabaseAuthentication(Boolean enableIAMDatabaseAuthentication) {
this.enableIAMDatabaseAuthentication = enableIAMDatabaseAuthentication;
}
/**
*
* If set to true
, enables Amazon Identity and Access Management (IAM) authentication for the entire DB
* cluster (this cannot be set at an instance level).
*
* Default: false
.
*
true
, enables Amazon Identity and Access Management (IAM) authentication for the
* entire DB cluster (this cannot be set at an instance level).
*
* Default: false
.
*/
public Boolean getEnableIAMDatabaseAuthentication() {
return this.enableIAMDatabaseAuthentication;
}
/**
*
* If set to true
, enables Amazon Identity and Access Management (IAM) authentication for the entire DB
* cluster (this cannot be set at an instance level).
*
* Default: false
.
*
true
, enables Amazon Identity and Access Management (IAM) authentication for the
* entire DB cluster (this cannot be set at an instance level).
*
* Default: false
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public CreateDBClusterRequest withEnableIAMDatabaseAuthentication(Boolean enableIAMDatabaseAuthentication) {
setEnableIAMDatabaseAuthentication(enableIAMDatabaseAuthentication);
return this;
}
/**
*
* If set to true
, enables Amazon Identity and Access Management (IAM) authentication for the entire DB
* cluster (this cannot be set at an instance level).
*
* Default: false
.
*
true
, enables Amazon Identity and Access Management (IAM) authentication for the
* entire DB cluster (this cannot be set at an instance level).
*
* Default: false
.
*/
public Boolean isEnableIAMDatabaseAuthentication() {
return this.enableIAMDatabaseAuthentication;
}
/**
*
* The list of log types that need to be enabled for exporting to CloudWatch Logs. *
* * @return The list of log types that need to be enabled for exporting to CloudWatch Logs. */ public java.util.List* The list of log types that need to be enabled for exporting to CloudWatch Logs. *
* * @param enableCloudwatchLogsExports * The list of log types that need to be enabled for exporting to CloudWatch Logs. */ public void setEnableCloudwatchLogsExports(java.util.Collection* The list of log types that need to be enabled for exporting to CloudWatch Logs. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setEnableCloudwatchLogsExports(java.util.Collection)} or * {@link #withEnableCloudwatchLogsExports(java.util.Collection)} if you want to override the existing values. *
* * @param enableCloudwatchLogsExports * The list of log types that need to be enabled for exporting to CloudWatch Logs. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withEnableCloudwatchLogsExports(String... enableCloudwatchLogsExports) { if (this.enableCloudwatchLogsExports == null) { setEnableCloudwatchLogsExports(new java.util.ArrayList* The list of log types that need to be enabled for exporting to CloudWatch Logs. *
* * @param enableCloudwatchLogsExports * The list of log types that need to be enabled for exporting to CloudWatch Logs. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withEnableCloudwatchLogsExports(java.util.Collection* A value that indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when * deletion protection is enabled. By default, deletion protection is enabled. *
* * @param deletionProtection * A value that indicates whether the DB cluster has deletion protection enabled. The database can't be * deleted when deletion protection is enabled. By default, deletion protection is enabled. */ public void setDeletionProtection(Boolean deletionProtection) { this.deletionProtection = deletionProtection; } /** ** A value that indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when * deletion protection is enabled. By default, deletion protection is enabled. *
* * @return A value that indicates whether the DB cluster has deletion protection enabled. The database can't be * deleted when deletion protection is enabled. By default, deletion protection is enabled. */ public Boolean getDeletionProtection() { return this.deletionProtection; } /** ** A value that indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when * deletion protection is enabled. By default, deletion protection is enabled. *
* * @param deletionProtection * A value that indicates whether the DB cluster has deletion protection enabled. The database can't be * deleted when deletion protection is enabled. By default, deletion protection is enabled. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withDeletionProtection(Boolean deletionProtection) { setDeletionProtection(deletionProtection); return this; } /** ** A value that indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when * deletion protection is enabled. By default, deletion protection is enabled. *
* * @return A value that indicates whether the DB cluster has deletion protection enabled. The database can't be * deleted when deletion protection is enabled. By default, deletion protection is enabled. */ public Boolean isDeletionProtection() { return this.deletionProtection; } /** * @param serverlessV2ScalingConfiguration */ public void setServerlessV2ScalingConfiguration(ServerlessV2ScalingConfiguration serverlessV2ScalingConfiguration) { this.serverlessV2ScalingConfiguration = serverlessV2ScalingConfiguration; } /** * @return */ public ServerlessV2ScalingConfiguration getServerlessV2ScalingConfiguration() { return this.serverlessV2ScalingConfiguration; } /** * @param serverlessV2ScalingConfiguration * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withServerlessV2ScalingConfiguration(ServerlessV2ScalingConfiguration serverlessV2ScalingConfiguration) { setServerlessV2ScalingConfiguration(serverlessV2ScalingConfiguration); return this; } /** ** The ID of the Neptune global database to which this new DB cluster should be added. *
* * @param globalClusterIdentifier * The ID of the Neptune global database to which this new DB cluster should be added. */ public void setGlobalClusterIdentifier(String globalClusterIdentifier) { this.globalClusterIdentifier = globalClusterIdentifier; } /** ** The ID of the Neptune global database to which this new DB cluster should be added. *
* * @return The ID of the Neptune global database to which this new DB cluster should be added. */ public String getGlobalClusterIdentifier() { return this.globalClusterIdentifier; } /** ** The ID of the Neptune global database to which this new DB cluster should be added. *
* * @param globalClusterIdentifier * The ID of the Neptune global database to which this new DB cluster should be added. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withGlobalClusterIdentifier(String globalClusterIdentifier) { setGlobalClusterIdentifier(globalClusterIdentifier); return this; } /** * The region where the source instance is located. * * @param sourceRegion * The region where the source instance is located. */ public void setSourceRegion(String sourceRegion) { this.sourceRegion = sourceRegion; } /** * The region where the source instance is located. * * @return The region where the source instance is located. */ public String getSourceRegion() { return this.sourceRegion; } /** * The region where the source instance is located. * * @param sourceRegion * The region where the source instance is located. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateDBClusterRequest withSourceRegion(String sourceRegion) { setSourceRegion(sourceRegion); 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 (getAvailabilityZones() != null) sb.append("AvailabilityZones: ").append(getAvailabilityZones()).append(","); if (getBackupRetentionPeriod() != null) sb.append("BackupRetentionPeriod: ").append(getBackupRetentionPeriod()).append(","); if (getCharacterSetName() != null) sb.append("CharacterSetName: ").append(getCharacterSetName()).append(","); if (getCopyTagsToSnapshot() != null) sb.append("CopyTagsToSnapshot: ").append(getCopyTagsToSnapshot()).append(","); if (getDatabaseName() != null) sb.append("DatabaseName: ").append(getDatabaseName()).append(","); if (getDBClusterIdentifier() != null) sb.append("DBClusterIdentifier: ").append(getDBClusterIdentifier()).append(","); if (getDBClusterParameterGroupName() != null) sb.append("DBClusterParameterGroupName: ").append(getDBClusterParameterGroupName()).append(","); if (getVpcSecurityGroupIds() != null) sb.append("VpcSecurityGroupIds: ").append(getVpcSecurityGroupIds()).append(","); if (getDBSubnetGroupName() != null) sb.append("DBSubnetGroupName: ").append(getDBSubnetGroupName()).append(","); if (getEngine() != null) sb.append("Engine: ").append(getEngine()).append(","); if (getEngineVersion() != null) sb.append("EngineVersion: ").append(getEngineVersion()).append(","); if (getPort() != null) sb.append("Port: ").append(getPort()).append(","); if (getMasterUsername() != null) sb.append("MasterUsername: ").append(getMasterUsername()).append(","); if (getMasterUserPassword() != null) sb.append("MasterUserPassword: ").append(getMasterUserPassword()).append(","); if (getOptionGroupName() != null) sb.append("OptionGroupName: ").append(getOptionGroupName()).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 (getTags() != null) sb.append("Tags: ").append(getTags()).append(","); if (getStorageEncrypted() != null) sb.append("StorageEncrypted: ").append(getStorageEncrypted()).append(","); if (getKmsKeyId() != null) sb.append("KmsKeyId: ").append(getKmsKeyId()).append(","); if (getPreSignedUrl() != null) sb.append("PreSignedUrl: ").append(getPreSignedUrl()).append(","); if (getEnableIAMDatabaseAuthentication() != null) sb.append("EnableIAMDatabaseAuthentication: ").append(getEnableIAMDatabaseAuthentication()).append(","); if (getEnableCloudwatchLogsExports() != null) sb.append("EnableCloudwatchLogsExports: ").append(getEnableCloudwatchLogsExports()).append(","); if (getDeletionProtection() != null) sb.append("DeletionProtection: ").append(getDeletionProtection()).append(","); if (getServerlessV2ScalingConfiguration() != null) sb.append("ServerlessV2ScalingConfiguration: ").append(getServerlessV2ScalingConfiguration()).append(","); if (getGlobalClusterIdentifier() != null) sb.append("GlobalClusterIdentifier: ").append(getGlobalClusterIdentifier()).append(","); if (getSourceRegion() != null) sb.append("SourceRegion: ").append(getSourceRegion()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateDBClusterRequest == false) return false; CreateDBClusterRequest other = (CreateDBClusterRequest) 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.getCharacterSetName() == null ^ this.getCharacterSetName() == null) return false; if (other.getCharacterSetName() != null && other.getCharacterSetName().equals(this.getCharacterSetName()) == 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.getDatabaseName() == null ^ this.getDatabaseName() == null) return false; if (other.getDatabaseName() != null && other.getDatabaseName().equals(this.getDatabaseName()) == 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.getDBClusterParameterGroupName() == null ^ this.getDBClusterParameterGroupName() == null) return false; if (other.getDBClusterParameterGroupName() != null && other.getDBClusterParameterGroupName().equals(this.getDBClusterParameterGroupName()) == false) return false; if (other.getVpcSecurityGroupIds() == null ^ this.getVpcSecurityGroupIds() == null) return false; if (other.getVpcSecurityGroupIds() != null && other.getVpcSecurityGroupIds().equals(this.getVpcSecurityGroupIds()) == false) return false; if (other.getDBSubnetGroupName() == null ^ this.getDBSubnetGroupName() == null) return false; if (other.getDBSubnetGroupName() != null && other.getDBSubnetGroupName().equals(this.getDBSubnetGroupName()) == 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.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.getMasterUserPassword() == null ^ this.getMasterUserPassword() == null) return false; if (other.getMasterUserPassword() != null && other.getMasterUserPassword().equals(this.getMasterUserPassword()) == false) return false; if (other.getOptionGroupName() == null ^ this.getOptionGroupName() == null) return false; if (other.getOptionGroupName() != null && other.getOptionGroupName().equals(this.getOptionGroupName()) == 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.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == 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.getPreSignedUrl() == null ^ this.getPreSignedUrl() == null) return false; if (other.getPreSignedUrl() != null && other.getPreSignedUrl().equals(this.getPreSignedUrl()) == false) return false; if (other.getEnableIAMDatabaseAuthentication() == null ^ this.getEnableIAMDatabaseAuthentication() == null) return false; if (other.getEnableIAMDatabaseAuthentication() != null && other.getEnableIAMDatabaseAuthentication().equals(this.getEnableIAMDatabaseAuthentication()) == false) return false; if (other.getEnableCloudwatchLogsExports() == null ^ this.getEnableCloudwatchLogsExports() == null) return false; if (other.getEnableCloudwatchLogsExports() != null && other.getEnableCloudwatchLogsExports().equals(this.getEnableCloudwatchLogsExports()) == false) return false; if (other.getDeletionProtection() == null ^ this.getDeletionProtection() == null) return false; if (other.getDeletionProtection() != null && other.getDeletionProtection().equals(this.getDeletionProtection()) == false) return false; if (other.getServerlessV2ScalingConfiguration() == null ^ this.getServerlessV2ScalingConfiguration() == null) return false; if (other.getServerlessV2ScalingConfiguration() != null && other.getServerlessV2ScalingConfiguration().equals(this.getServerlessV2ScalingConfiguration()) == false) return false; if (other.getGlobalClusterIdentifier() == null ^ this.getGlobalClusterIdentifier() == null) return false; if (other.getGlobalClusterIdentifier() != null && other.getGlobalClusterIdentifier().equals(this.getGlobalClusterIdentifier()) == false) return false; if (other.getSourceRegion() == null ^ this.getSourceRegion() == null) return false; if (other.getSourceRegion() != null && other.getSourceRegion().equals(this.getSourceRegion()) == 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 + ((getCharacterSetName() == null) ? 0 : getCharacterSetName().hashCode()); hashCode = prime * hashCode + ((getCopyTagsToSnapshot() == null) ? 0 : getCopyTagsToSnapshot().hashCode()); hashCode = prime * hashCode + ((getDatabaseName() == null) ? 0 : getDatabaseName().hashCode()); hashCode = prime * hashCode + ((getDBClusterIdentifier() == null) ? 0 : getDBClusterIdentifier().hashCode()); hashCode = prime * hashCode + ((getDBClusterParameterGroupName() == null) ? 0 : getDBClusterParameterGroupName().hashCode()); hashCode = prime * hashCode + ((getVpcSecurityGroupIds() == null) ? 0 : getVpcSecurityGroupIds().hashCode()); hashCode = prime * hashCode + ((getDBSubnetGroupName() == null) ? 0 : getDBSubnetGroupName().hashCode()); hashCode = prime * hashCode + ((getEngine() == null) ? 0 : getEngine().hashCode()); hashCode = prime * hashCode + ((getEngineVersion() == null) ? 0 : getEngineVersion().hashCode()); hashCode = prime * hashCode + ((getPort() == null) ? 0 : getPort().hashCode()); hashCode = prime * hashCode + ((getMasterUsername() == null) ? 0 : getMasterUsername().hashCode()); hashCode = prime * hashCode + ((getMasterUserPassword() == null) ? 0 : getMasterUserPassword().hashCode()); hashCode = prime * hashCode + ((getOptionGroupName() == null) ? 0 : getOptionGroupName().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 + ((getTags() == null) ? 0 : getTags().hashCode()); hashCode = prime * hashCode + ((getStorageEncrypted() == null) ? 0 : getStorageEncrypted().hashCode()); hashCode = prime * hashCode + ((getKmsKeyId() == null) ? 0 : getKmsKeyId().hashCode()); hashCode = prime * hashCode + ((getPreSignedUrl() == null) ? 0 : getPreSignedUrl().hashCode()); hashCode = prime * hashCode + ((getEnableIAMDatabaseAuthentication() == null) ? 0 : getEnableIAMDatabaseAuthentication().hashCode()); hashCode = prime * hashCode + ((getEnableCloudwatchLogsExports() == null) ? 0 : getEnableCloudwatchLogsExports().hashCode()); hashCode = prime * hashCode + ((getDeletionProtection() == null) ? 0 : getDeletionProtection().hashCode()); hashCode = prime * hashCode + ((getServerlessV2ScalingConfiguration() == null) ? 0 : getServerlessV2ScalingConfiguration().hashCode()); hashCode = prime * hashCode + ((getGlobalClusterIdentifier() == null) ? 0 : getGlobalClusterIdentifier().hashCode()); hashCode = prime * hashCode + ((getSourceRegion() == null) ? 0 : getSourceRegion().hashCode()); return hashCode; } @Override public CreateDBClusterRequest clone() { return (CreateDBClusterRequest) super.clone(); } }