/* * 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 RestoreDBClusterFromSnapshotRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** *
* Provides the list of EC2 Availability Zones that instances in the restored DB cluster can be created in. *
*/ private java.util.List* The name of the DB cluster to create from the DB snapshot or DB cluster snapshot. This parameter isn't * case-sensitive. *
** 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-snapshot-id
*
* The identifier for the DB snapshot or DB cluster snapshot to restore from. *
** You can use either the name or the Amazon Resource Name (ARN) to specify a DB cluster snapshot. However, you can * use only the ARN to specify a DB snapshot. *
** Constraints: *
** Must match the identifier of an existing Snapshot. *
** The database engine to use for the new DB cluster. *
** Default: The same as source *
** Constraint: Must be compatible with the engine of the source *
*/ private String engine; /** ** The version of the database engine to use for the new DB cluster. *
*/ private String engineVersion; /** ** The port number on which the new DB cluster accepts connections. *
*
* Constraints: Value must be 1150-65535
*
* Default: The same port as the original DB cluster. *
*/ private Integer port; /** ** The name of the DB subnet group to use for the new DB cluster. *
** Constraints: If supplied, must match the name of an existing DBSubnetGroup. *
*
* Example: mySubnetgroup
*
* Not supported. *
*/ private String databaseName; /** ** (Not supported by Neptune) *
*/ private String optionGroupName; /** ** A list of VPC security groups that the new DB cluster will belong to. *
*/ private java.util.List* The tags to be assigned to the restored DB cluster. *
*/ private java.util.List* The Amazon KMS key identifier to use when restoring an encrypted DB cluster from a DB snapshot or DB cluster * snapshot. *
** The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are restoring 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 you do not specify a value for the KmsKeyId
parameter, then the following will occur:
*
* If the DB snapshot or DB cluster snapshot in SnapshotIdentifier
is encrypted, then the restored DB
* cluster is encrypted using the KMS key that was used to encrypt the DB snapshot or DB cluster snapshot.
*
* If the DB snapshot or DB cluster snapshot in SnapshotIdentifier
is not encrypted, then the restored
* DB cluster is not encrypted.
*
* True to enable mapping of Amazon Identity and Access Management (IAM) accounts to database accounts, and * otherwise false. *
*
* Default: false
*
* The list of logs that the restored DB cluster is to export to Amazon CloudWatch Logs. *
*/ private java.util.List* The name of the DB cluster parameter group to associate with the new DB cluster. *
** Constraints: *
** If supplied, must match the name of an existing DBClusterParameterGroup. *
** 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 disabled. *
*/ private Boolean deletionProtection; /** *
* If set to true
, tags are copied to any snapshot of the restored DB cluster that is created.
*
* Provides the list of EC2 Availability Zones that instances in the restored DB cluster can be created in. *
* * @return Provides the list of EC2 Availability Zones that instances in the restored DB cluster can be created in. */ public java.util.List* Provides the list of EC2 Availability Zones that instances in the restored DB cluster can be created in. *
* * @param availabilityZones * Provides the list of EC2 Availability Zones that instances in the restored DB cluster can be created in. */ public void setAvailabilityZones(java.util.Collection* Provides the list of EC2 Availability Zones that instances in the restored 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 * Provides the list of EC2 Availability Zones that instances in the restored DB cluster can be created in. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreDBClusterFromSnapshotRequest withAvailabilityZones(String... availabilityZones) { if (this.availabilityZones == null) { setAvailabilityZones(new java.util.ArrayList* Provides the list of EC2 Availability Zones that instances in the restored DB cluster can be created in. *
* * @param availabilityZones * Provides the list of EC2 Availability Zones that instances in the restored DB cluster can be created in. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreDBClusterFromSnapshotRequest withAvailabilityZones(java.util.Collection* The name of the DB cluster to create from the DB snapshot or DB cluster snapshot. This parameter isn't * case-sensitive. *
** 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-snapshot-id
*
* 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-snapshot-id
*/
public void setDBClusterIdentifier(String dBClusterIdentifier) {
this.dBClusterIdentifier = dBClusterIdentifier;
}
/**
*
* The name of the DB cluster to create from the DB snapshot or DB cluster snapshot. This parameter isn't * case-sensitive. *
** 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-snapshot-id
*
* 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-snapshot-id
*/
public String getDBClusterIdentifier() {
return this.dBClusterIdentifier;
}
/**
*
* The name of the DB cluster to create from the DB snapshot or DB cluster snapshot. This parameter isn't * case-sensitive. *
** 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-snapshot-id
*
* 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-snapshot-id
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreDBClusterFromSnapshotRequest withDBClusterIdentifier(String dBClusterIdentifier) {
setDBClusterIdentifier(dBClusterIdentifier);
return this;
}
/**
*
* The identifier for the DB snapshot or DB cluster snapshot to restore from. *
** You can use either the name or the Amazon Resource Name (ARN) to specify a DB cluster snapshot. However, you can * use only the ARN to specify a DB snapshot. *
** Constraints: *
** Must match the identifier of an existing Snapshot. *
** You can use either the name or the Amazon Resource Name (ARN) to specify a DB cluster snapshot. However, * you can use only the ARN to specify a DB snapshot. *
** Constraints: *
** Must match the identifier of an existing Snapshot. *
** The identifier for the DB snapshot or DB cluster snapshot to restore from. *
** You can use either the name or the Amazon Resource Name (ARN) to specify a DB cluster snapshot. However, you can * use only the ARN to specify a DB snapshot. *
** Constraints: *
** Must match the identifier of an existing Snapshot. *
** You can use either the name or the Amazon Resource Name (ARN) to specify a DB cluster snapshot. However, * you can use only the ARN to specify a DB snapshot. *
** Constraints: *
** Must match the identifier of an existing Snapshot. *
** The identifier for the DB snapshot or DB cluster snapshot to restore from. *
** You can use either the name or the Amazon Resource Name (ARN) to specify a DB cluster snapshot. However, you can * use only the ARN to specify a DB snapshot. *
** Constraints: *
** Must match the identifier of an existing Snapshot. *
** You can use either the name or the Amazon Resource Name (ARN) to specify a DB cluster snapshot. However, * you can use only the ARN to specify a DB snapshot. *
** Constraints: *
** Must match the identifier of an existing Snapshot. *
** The database engine to use for the new DB cluster. *
** Default: The same as source *
** Constraint: Must be compatible with the engine of the source *
* * @param engine * The database engine to use for the new DB cluster. ** Default: The same as source *
** Constraint: Must be compatible with the engine of the source */ public void setEngine(String engine) { this.engine = engine; } /** *
* The database engine to use for the new DB cluster. *
** Default: The same as source *
** Constraint: Must be compatible with the engine of the source *
* * @return The database engine to use for the new DB cluster. ** Default: The same as source *
** Constraint: Must be compatible with the engine of the source */ public String getEngine() { return this.engine; } /** *
* The database engine to use for the new DB cluster. *
** Default: The same as source *
** Constraint: Must be compatible with the engine of the source *
* * @param engine * The database engine to use for the new DB cluster. ** Default: The same as source *
** Constraint: Must be compatible with the engine of the source * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreDBClusterFromSnapshotRequest withEngine(String engine) { setEngine(engine); return this; } /** *
* The version of the database engine to use for the new DB cluster. *
* * @param engineVersion * The version of the database engine to use for the new DB cluster. */ public void setEngineVersion(String engineVersion) { this.engineVersion = engineVersion; } /** ** The version of the database engine to use for the new DB cluster. *
* * @return The version of the database engine to use for the new DB cluster. */ public String getEngineVersion() { return this.engineVersion; } /** ** The version of the database engine to use for the new DB cluster. *
* * @param engineVersion * The version of the database engine to use for the new DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreDBClusterFromSnapshotRequest withEngineVersion(String engineVersion) { setEngineVersion(engineVersion); return this; } /** ** The port number on which the new DB cluster accepts connections. *
*
* Constraints: Value must be 1150-65535
*
* Default: The same port as the original DB cluster. *
* * @param port * The port number on which the new DB cluster accepts connections. *
* Constraints: Value must be 1150-65535
*
* Default: The same port as the original DB cluster. */ public void setPort(Integer port) { this.port = port; } /** *
* The port number on which the new DB cluster accepts connections. *
*
* Constraints: Value must be 1150-65535
*
* Default: The same port as the original DB cluster. *
* * @return The port number on which the new DB cluster accepts connections. *
* Constraints: Value must be 1150-65535
*
* Default: The same port as the original DB cluster. */ public Integer getPort() { return this.port; } /** *
* The port number on which the new DB cluster accepts connections. *
*
* Constraints: Value must be 1150-65535
*
* Default: The same port as the original DB cluster. *
* * @param port * The port number on which the new DB cluster accepts connections. *
* Constraints: Value must be 1150-65535
*
* Default: The same port as the original DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreDBClusterFromSnapshotRequest withPort(Integer port) { setPort(port); return this; } /** *
* The name of the DB subnet group to use for the new DB cluster. *
** Constraints: If supplied, must match the name of an existing DBSubnetGroup. *
*
* Example: mySubnetgroup
*
* Constraints: If supplied, must match the name of an existing DBSubnetGroup. *
*
* Example: mySubnetgroup
*/
public void setDBSubnetGroupName(String dBSubnetGroupName) {
this.dBSubnetGroupName = dBSubnetGroupName;
}
/**
*
* The name of the DB subnet group to use for the new DB cluster. *
** Constraints: If supplied, must match the name of an existing DBSubnetGroup. *
*
* Example: mySubnetgroup
*
* Constraints: If supplied, must match the name of an existing DBSubnetGroup. *
*
* Example: mySubnetgroup
*/
public String getDBSubnetGroupName() {
return this.dBSubnetGroupName;
}
/**
*
* The name of the DB subnet group to use for the new DB cluster. *
** Constraints: If supplied, must match the name of an existing DBSubnetGroup. *
*
* Example: mySubnetgroup
*
* Constraints: If supplied, must match the name of an existing DBSubnetGroup. *
*
* Example: mySubnetgroup
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreDBClusterFromSnapshotRequest withDBSubnetGroupName(String dBSubnetGroupName) {
setDBSubnetGroupName(dBSubnetGroupName);
return this;
}
/**
*
* Not supported. *
* * @param databaseName * Not supported. */ public void setDatabaseName(String databaseName) { this.databaseName = databaseName; } /** ** Not supported. *
* * @return Not supported. */ public String getDatabaseName() { return this.databaseName; } /** ** Not supported. *
* * @param databaseName * Not supported. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreDBClusterFromSnapshotRequest withDatabaseName(String databaseName) { setDatabaseName(databaseName); 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 RestoreDBClusterFromSnapshotRequest withOptionGroupName(String optionGroupName) { setOptionGroupName(optionGroupName); return this; } /** ** A list of VPC security groups that the new DB cluster will belong to. *
* * @return A list of VPC security groups that the new DB cluster will belong to. */ public java.util.List* A list of VPC security groups that the new DB cluster will belong to. *
* * @param vpcSecurityGroupIds * A list of VPC security groups that the new DB cluster will belong to. */ public void setVpcSecurityGroupIds(java.util.Collection* A list of VPC security groups that the new DB cluster will belong to. *
** 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 VPC security groups that the new DB cluster will belong to. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreDBClusterFromSnapshotRequest withVpcSecurityGroupIds(String... vpcSecurityGroupIds) { if (this.vpcSecurityGroupIds == null) { setVpcSecurityGroupIds(new java.util.ArrayList* A list of VPC security groups that the new DB cluster will belong to. *
* * @param vpcSecurityGroupIds * A list of VPC security groups that the new DB cluster will belong to. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreDBClusterFromSnapshotRequest withVpcSecurityGroupIds(java.util.Collection* The tags to be assigned to the restored DB cluster. *
* * @return The tags to be assigned to the restored DB cluster. */ public java.util.List* The tags to be assigned to the restored DB cluster. *
* * @param tags * The tags to be assigned to the restored DB cluster. */ public void setTags(java.util.Collection* The tags to be assigned to the restored 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 be assigned to the restored DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreDBClusterFromSnapshotRequest withTags(Tag... tags) { if (this.tags == null) { setTags(new java.util.ArrayList* The tags to be assigned to the restored DB cluster. *
* * @param tags * The tags to be assigned to the restored DB cluster. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreDBClusterFromSnapshotRequest withTags(java.util.Collection* The Amazon KMS key identifier to use when restoring an encrypted DB cluster from a DB snapshot or DB cluster * snapshot. *
** The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are restoring 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 you do not specify a value for the KmsKeyId
parameter, then the following will occur:
*
* If the DB snapshot or DB cluster snapshot in SnapshotIdentifier
is encrypted, then the restored DB
* cluster is encrypted using the KMS key that was used to encrypt the DB snapshot or DB cluster snapshot.
*
* If the DB snapshot or DB cluster snapshot in SnapshotIdentifier
is not encrypted, then the restored
* DB cluster is not encrypted.
*
* The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are restoring * 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 you do not specify a value for the KmsKeyId
parameter, then the following will occur:
*
* If the DB snapshot or DB cluster snapshot in SnapshotIdentifier
is encrypted, then the
* restored DB cluster is encrypted using the KMS key that was used to encrypt the DB snapshot or DB cluster
* snapshot.
*
* If the DB snapshot or DB cluster snapshot in SnapshotIdentifier
is not encrypted, then the
* restored DB cluster is not encrypted.
*
* The Amazon KMS key identifier to use when restoring an encrypted DB cluster from a DB snapshot or DB cluster * snapshot. *
** The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are restoring 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 you do not specify a value for the KmsKeyId
parameter, then the following will occur:
*
* If the DB snapshot or DB cluster snapshot in SnapshotIdentifier
is encrypted, then the restored DB
* cluster is encrypted using the KMS key that was used to encrypt the DB snapshot or DB cluster snapshot.
*
* If the DB snapshot or DB cluster snapshot in SnapshotIdentifier
is not encrypted, then the restored
* DB cluster is not encrypted.
*
* The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are restoring * 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 you do not specify a value for the KmsKeyId
parameter, then the following will occur:
*
* If the DB snapshot or DB cluster snapshot in SnapshotIdentifier
is encrypted, then the
* restored DB cluster is encrypted using the KMS key that was used to encrypt the DB snapshot or DB cluster
* snapshot.
*
* If the DB snapshot or DB cluster snapshot in SnapshotIdentifier
is not encrypted, then the
* restored DB cluster is not encrypted.
*
* The Amazon KMS key identifier to use when restoring an encrypted DB cluster from a DB snapshot or DB cluster * snapshot. *
** The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are restoring 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 you do not specify a value for the KmsKeyId
parameter, then the following will occur:
*
* If the DB snapshot or DB cluster snapshot in SnapshotIdentifier
is encrypted, then the restored DB
* cluster is encrypted using the KMS key that was used to encrypt the DB snapshot or DB cluster snapshot.
*
* If the DB snapshot or DB cluster snapshot in SnapshotIdentifier
is not encrypted, then the restored
* DB cluster is not encrypted.
*
* The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are restoring * 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 you do not specify a value for the KmsKeyId
parameter, then the following will occur:
*
* If the DB snapshot or DB cluster snapshot in SnapshotIdentifier
is encrypted, then the
* restored DB cluster is encrypted using the KMS key that was used to encrypt the DB snapshot or DB cluster
* snapshot.
*
* If the DB snapshot or DB cluster snapshot in SnapshotIdentifier
is not encrypted, then the
* restored DB cluster is not encrypted.
*
* True to enable mapping of Amazon Identity and Access Management (IAM) accounts to database accounts, and * otherwise false. *
*
* Default: false
*
* Default: false
*/
public void setEnableIAMDatabaseAuthentication(Boolean enableIAMDatabaseAuthentication) {
this.enableIAMDatabaseAuthentication = enableIAMDatabaseAuthentication;
}
/**
*
* True to enable mapping of Amazon Identity and Access Management (IAM) accounts to database accounts, and * otherwise false. *
*
* Default: false
*
* Default: false
*/
public Boolean getEnableIAMDatabaseAuthentication() {
return this.enableIAMDatabaseAuthentication;
}
/**
*
* True to enable mapping of Amazon Identity and Access Management (IAM) accounts to database accounts, and * otherwise false. *
*
* Default: false
*
* Default: false
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreDBClusterFromSnapshotRequest withEnableIAMDatabaseAuthentication(Boolean enableIAMDatabaseAuthentication) {
setEnableIAMDatabaseAuthentication(enableIAMDatabaseAuthentication);
return this;
}
/**
*
* True to enable mapping of Amazon Identity and Access Management (IAM) accounts to database accounts, and * otherwise false. *
*
* Default: false
*
* Default: false
*/
public Boolean isEnableIAMDatabaseAuthentication() {
return this.enableIAMDatabaseAuthentication;
}
/**
*
* The list of logs that the restored DB cluster is to export to Amazon CloudWatch Logs. *
* * @return The list of logs that the restored DB cluster is to export to Amazon CloudWatch Logs. */ public java.util.List* The list of logs that the restored DB cluster is to export to Amazon CloudWatch Logs. *
* * @param enableCloudwatchLogsExports * The list of logs that the restored DB cluster is to export to Amazon CloudWatch Logs. */ public void setEnableCloudwatchLogsExports(java.util.Collection* The list of logs that the restored DB cluster is to export to Amazon 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 logs that the restored DB cluster is to export to Amazon CloudWatch Logs. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreDBClusterFromSnapshotRequest withEnableCloudwatchLogsExports(String... enableCloudwatchLogsExports) { if (this.enableCloudwatchLogsExports == null) { setEnableCloudwatchLogsExports(new java.util.ArrayList* The list of logs that the restored DB cluster is to export to Amazon CloudWatch Logs. *
* * @param enableCloudwatchLogsExports * The list of logs that the restored DB cluster is to export to Amazon CloudWatch Logs. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreDBClusterFromSnapshotRequest withEnableCloudwatchLogsExports(java.util.Collection* The name of the DB cluster parameter group to associate with the new DB cluster. *
** 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 the new DB cluster. *
** 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 the new DB cluster. *
** Constraints: *
** If supplied, must match the name of an existing DBClusterParameterGroup. *
** Constraints: *
** If supplied, must match the name of an existing DBClusterParameterGroup. *
** 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 disabled. *
* * @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 disabled. */ 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 disabled. *
* * @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 disabled. */ 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 disabled. *
* * @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 disabled. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreDBClusterFromSnapshotRequest 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 disabled. *
* * @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 disabled. */ public Boolean isDeletionProtection() { return this.deletionProtection; } /** *
* If set to true
, tags are copied to any snapshot of the restored DB cluster that is created.
*
true
, tags are copied to any snapshot of the restored 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 restored DB cluster that is created.
*
true
, tags are copied to any snapshot of the restored DB cluster that is
* created.
*/
public Boolean getCopyTagsToSnapshot() {
return this.copyTagsToSnapshot;
}
/**
*
* If set to true
, tags are copied to any snapshot of the restored DB cluster that is created.
*
true
, tags are copied to any snapshot of the restored DB cluster that is
* created.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreDBClusterFromSnapshotRequest withCopyTagsToSnapshot(Boolean copyTagsToSnapshot) {
setCopyTagsToSnapshot(copyTagsToSnapshot);
return this;
}
/**
*
* If set to true
, tags are copied to any snapshot of the restored DB cluster that is created.
*
true
, tags are copied to any snapshot of the restored DB cluster that is
* created.
*/
public Boolean isCopyTagsToSnapshot() {
return this.copyTagsToSnapshot;
}
/**
* @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 RestoreDBClusterFromSnapshotRequest withServerlessV2ScalingConfiguration(ServerlessV2ScalingConfiguration serverlessV2ScalingConfiguration) {
setServerlessV2ScalingConfiguration(serverlessV2ScalingConfiguration);
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 (getDBClusterIdentifier() != null)
sb.append("DBClusterIdentifier: ").append(getDBClusterIdentifier()).append(",");
if (getSnapshotIdentifier() != null)
sb.append("SnapshotIdentifier: ").append(getSnapshotIdentifier()).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 (getDBSubnetGroupName() != null)
sb.append("DBSubnetGroupName: ").append(getDBSubnetGroupName()).append(",");
if (getDatabaseName() != null)
sb.append("DatabaseName: ").append(getDatabaseName()).append(",");
if (getOptionGroupName() != null)
sb.append("OptionGroupName: ").append(getOptionGroupName()).append(",");
if (getVpcSecurityGroupIds() != null)
sb.append("VpcSecurityGroupIds: ").append(getVpcSecurityGroupIds()).append(",");
if (getTags() != null)
sb.append("Tags: ").append(getTags()).append(",");
if (getKmsKeyId() != null)
sb.append("KmsKeyId: ").append(getKmsKeyId()).append(",");
if (getEnableIAMDatabaseAuthentication() != null)
sb.append("EnableIAMDatabaseAuthentication: ").append(getEnableIAMDatabaseAuthentication()).append(",");
if (getEnableCloudwatchLogsExports() != null)
sb.append("EnableCloudwatchLogsExports: ").append(getEnableCloudwatchLogsExports()).append(",");
if (getDBClusterParameterGroupName() != null)
sb.append("DBClusterParameterGroupName: ").append(getDBClusterParameterGroupName()).append(",");
if (getDeletionProtection() != null)
sb.append("DeletionProtection: ").append(getDeletionProtection()).append(",");
if (getCopyTagsToSnapshot() != null)
sb.append("CopyTagsToSnapshot: ").append(getCopyTagsToSnapshot()).append(",");
if (getServerlessV2ScalingConfiguration() != null)
sb.append("ServerlessV2ScalingConfiguration: ").append(getServerlessV2ScalingConfiguration());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof RestoreDBClusterFromSnapshotRequest == false)
return false;
RestoreDBClusterFromSnapshotRequest other = (RestoreDBClusterFromSnapshotRequest) obj;
if (other.getAvailabilityZones() == null ^ this.getAvailabilityZones() == null)
return false;
if (other.getAvailabilityZones() != null && other.getAvailabilityZones().equals(this.getAvailabilityZones()) == 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.getSnapshotIdentifier() == null ^ this.getSnapshotIdentifier() == null)
return false;
if (other.getSnapshotIdentifier() != null && other.getSnapshotIdentifier().equals(this.getSnapshotIdentifier()) == 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.getDBSubnetGroupName() == null ^ this.getDBSubnetGroupName() == null)
return false;
if (other.getDBSubnetGroupName() != null && other.getDBSubnetGroupName().equals(this.getDBSubnetGroupName()) == 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.getOptionGroupName() == null ^ this.getOptionGroupName() == null)
return false;
if (other.getOptionGroupName() != null && other.getOptionGroupName().equals(this.getOptionGroupName()) == 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.getTags() == null ^ this.getTags() == null)
return false;
if (other.getTags() != null && other.getTags().equals(this.getTags()) == false)
return false;
if (other.getKmsKeyId() == null ^ this.getKmsKeyId() == null)
return false;
if (other.getKmsKeyId() != null && other.getKmsKeyId().equals(this.getKmsKeyId()) == false)
return false;
if (other.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.getDBClusterParameterGroupName() == null ^ this.getDBClusterParameterGroupName() == null)
return false;
if (other.getDBClusterParameterGroupName() != null && other.getDBClusterParameterGroupName().equals(this.getDBClusterParameterGroupName()) == 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.getCopyTagsToSnapshot() == null ^ this.getCopyTagsToSnapshot() == null)
return false;
if (other.getCopyTagsToSnapshot() != null && other.getCopyTagsToSnapshot().equals(this.getCopyTagsToSnapshot()) == false)
return false;
if (other.getServerlessV2ScalingConfiguration() == null ^ this.getServerlessV2ScalingConfiguration() == null)
return false;
if (other.getServerlessV2ScalingConfiguration() != null
&& other.getServerlessV2ScalingConfiguration().equals(this.getServerlessV2ScalingConfiguration()) == 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 + ((getDBClusterIdentifier() == null) ? 0 : getDBClusterIdentifier().hashCode());
hashCode = prime * hashCode + ((getSnapshotIdentifier() == null) ? 0 : getSnapshotIdentifier().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 + ((getDBSubnetGroupName() == null) ? 0 : getDBSubnetGroupName().hashCode());
hashCode = prime * hashCode + ((getDatabaseName() == null) ? 0 : getDatabaseName().hashCode());
hashCode = prime * hashCode + ((getOptionGroupName() == null) ? 0 : getOptionGroupName().hashCode());
hashCode = prime * hashCode + ((getVpcSecurityGroupIds() == null) ? 0 : getVpcSecurityGroupIds().hashCode());
hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode());
hashCode = prime * hashCode + ((getKmsKeyId() == null) ? 0 : getKmsKeyId().hashCode());
hashCode = prime * hashCode + ((getEnableIAMDatabaseAuthentication() == null) ? 0 : getEnableIAMDatabaseAuthentication().hashCode());
hashCode = prime * hashCode + ((getEnableCloudwatchLogsExports() == null) ? 0 : getEnableCloudwatchLogsExports().hashCode());
hashCode = prime * hashCode + ((getDBClusterParameterGroupName() == null) ? 0 : getDBClusterParameterGroupName().hashCode());
hashCode = prime * hashCode + ((getDeletionProtection() == null) ? 0 : getDeletionProtection().hashCode());
hashCode = prime * hashCode + ((getCopyTagsToSnapshot() == null) ? 0 : getCopyTagsToSnapshot().hashCode());
hashCode = prime * hashCode + ((getServerlessV2ScalingConfiguration() == null) ? 0 : getServerlessV2ScalingConfiguration().hashCode());
return hashCode;
}
@Override
public RestoreDBClusterFromSnapshotRequest clone() {
return (RestoreDBClusterFromSnapshotRequest) super.clone();
}
}