/* * 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.redshift.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 RestoreFromClusterSnapshotRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable { /** ** The identifier of the cluster that will be created from restoring the snapshot. *
** Constraints: *
** Must contain from 1 to 63 alphanumeric characters or hyphens. *
** Alphabetic characters must be lowercase. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
** Must be unique for all clusters within an Amazon Web Services account. *
*
* The name of the snapshot from which to create the new cluster. This parameter isn't case sensitive. You must
* specify this parameter or snapshotArn
, but not both.
*
* Example: my-snapshot-id
*
* The Amazon Resource Name (ARN) of the snapshot associated with the message to restore from a cluster. You must
* specify this parameter or snapshotIdentifier
, but not both.
*
* The name of the cluster the source snapshot was created from. This parameter is required if your IAM user has a * policy containing a snapshot resource element that specifies anything other than * for the cluster name. *
*/ private String snapshotClusterIdentifier; /** ** The port number on which the cluster accepts connections. *
** Default: The same port as the original cluster. *
*
* Constraints: Must be between 1115
and 65535
.
*
* The Amazon EC2 Availability Zone in which to restore the cluster. *
** Default: A random, system-chosen Availability Zone. *
*
* Example: us-east-2a
*
* If true
, major version upgrades can be applied during the maintenance window to the Amazon Redshift
* engine that is running on the cluster.
*
* Default: true
*
* The name of the subnet group where you want to cluster restored. *
** A snapshot of cluster in VPC can be restored only in VPC. Therefore, you must provide subnet group name where you * want the cluster restored. *
*/ private String clusterSubnetGroupName; /** *
* If true
, the cluster can be accessed from a public network.
*
* The Amazon Web Services account used to create or copy the snapshot. Required if you are restoring a snapshot you * do not own, optional if you own the snapshot. *
*/ private String ownerAccount; /** ** Specifies the name of the HSM client certificate the Amazon Redshift cluster uses to retrieve the data encryption * keys stored in an HSM. *
*/ private String hsmClientCertificateIdentifier; /** ** Specifies the name of the HSM configuration that contains the information the Amazon Redshift cluster can use to * retrieve and store keys in an HSM. *
*/ private String hsmConfigurationIdentifier; /** ** The Elastic IP (EIP) address for the cluster. Don't specify the Elastic IP address for a publicly accessible * cluster with availability zone relocation turned on. *
*/ private String elasticIp; /** ** The name of the parameter group to be associated with this cluster. *
** Default: The default Amazon Redshift cluster parameter group. For information about the default parameter group, * go to Working with * Amazon Redshift Parameter Groups. *
** Constraints: *
** Must be 1 to 255 alphanumeric characters or hyphens. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
** A list of security groups to be associated with this cluster. *
** Default: The default cluster security group for Amazon Redshift. *
** Cluster security groups only apply to clusters outside of VPCs. *
*/ private com.amazonaws.internal.SdkInternalList* A list of Virtual Private Cloud (VPC) security groups to be associated with the cluster. *
** Default: The default VPC security group is associated with the cluster. *
** VPC security groups only apply to clusters in VPCs. *
*/ private com.amazonaws.internal.SdkInternalList* The weekly time range (in UTC) during which automated cluster maintenance can occur. *
*
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* Default: The value selected for the cluster from which the snapshot was taken. For more information about the * time blocks for each region, see Maintenance Windows in Amazon Redshift Cluster Management Guide. *
** Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun *
** Constraints: Minimum 30-minute window. *
*/ private String preferredMaintenanceWindow; /** ** The number of days that automated snapshots are retained. If the value is 0, automated snapshots are disabled. * Even if automated snapshots are disabled, you can still create manual snapshots when you want with * CreateClusterSnapshot. *
** You can't disable automated snapshots for RA3 node types. Set the automated retention period from 1-35 days. *
** Default: The value selected for the cluster from which the snapshot was taken. *
** Constraints: Must be a value from 0 to 35. *
*/ private Integer automatedSnapshotRetentionPeriod; /** ** The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained * indefinitely. This setting doesn't change the retention period of existing snapshots. *
** The value must be either -1 or an integer between 1 and 3,653. *
*/ private Integer manualSnapshotRetentionPeriod; /** ** The Key Management Service (KMS) key ID of the encryption key that encrypts data in the cluster restored from a * shared snapshot. You can also provide the key ID when you restore from an unencrypted snapshot to an encrypted * cluster in the same account. Additionally, you can specify a new KMS key ID when you restore from an encrypted * snapshot in the same account in order to change it. In that case, the restored cluster is encrypted with the new * KMS key ID. *
*/ private String kmsKeyId; /** ** The node type that the restored cluster will be provisioned with. *
** Default: The node type of the cluster from which the snapshot was taken. You can modify this if you are using any * DS node type. In that case, you can choose to restore into another DS node type of the same size. For example, * you can restore ds1.8xlarge into ds2.8xlarge, or ds1.xlarge into ds2.xlarge. If you have a DC instance type, you * must restore into that same instance type and size. In other words, you can only restore a dc1.large instance * type into another dc1.large instance type or dc2.large instance type. You can't restore dc1.8xlarge to * dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize to a dc2.8large cluster. For more information * about node types, see * About Clusters and Nodes in the Amazon Redshift Cluster Management Guide. *
*/ private String nodeType; /** ** An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster * that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the * Amazon Redshift Cluster Management Guide. *
*
* If this option is true
, enhanced VPC routing is enabled.
*
* Default: false *
*/ private Boolean enhancedVpcRouting; /** ** Reserved. *
*/ private String additionalInfo; /** ** A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other Amazon Web * Services services. You must supply the IAM roles in their Amazon Resource Name (ARN) format. *
** The maximum number of IAM roles that you can associate is subject to a quota. For more information, go to Quotas and limits in the * Amazon Redshift Cluster Management Guide. *
*/ private com.amazonaws.internal.SdkInternalList
* The name of the maintenance track for the restored cluster. When you take a snapshot, the snapshot inherits the
* MaintenanceTrack
value from the cluster. The snapshot might be on a different track than the cluster
* that was the source for the snapshot. For example, suppose that you take a snapshot of a cluster that is on the
* current track and then change the cluster to be on the trailing track. In this case, the snapshot and the source
* cluster are on different tracks.
*
* A unique identifier for the snapshot schedule. *
*/ private String snapshotScheduleIdentifier; /** ** The number of nodes specified when provisioning the restored cluster. *
*/ private Integer numberOfNodes; /** ** The option to enable relocation for an Amazon Redshift cluster between Availability Zones after the cluster is * restored. *
*/ private Boolean availabilityZoneRelocation; /** ** This parameter is retired. It does not set the AQUA configuration status. Amazon Redshift automatically * determines whether to use AQUA (Advanced Query Accelerator). *
*/ private String aquaConfigurationStatus; /** ** The Amazon Resource Name (ARN) for the IAM role that was set as default for the cluster when the cluster was last * modified while it was restored from a snapshot. *
*/ private String defaultIamRoleArn; /** ** The identifier of the target reserved node offering. *
*/ private String reservedNodeId; /** ** The identifier of the target reserved node offering. *
*/ private String targetReservedNodeOfferingId; /** ** Enables support for restoring an unencrypted snapshot to a cluster encrypted with Key Management Service (KMS) * and a customer managed key. *
*/ private Boolean encrypted; /** ** The identifier of the cluster that will be created from restoring the snapshot. *
** Constraints: *
** Must contain from 1 to 63 alphanumeric characters or hyphens. *
** Alphabetic characters must be lowercase. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
** Must be unique for all clusters within an Amazon Web Services account. *
** Constraints: *
** Must contain from 1 to 63 alphanumeric characters or hyphens. *
** Alphabetic characters must be lowercase. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
** Must be unique for all clusters within an Amazon Web Services account. *
** The identifier of the cluster that will be created from restoring the snapshot. *
** Constraints: *
** Must contain from 1 to 63 alphanumeric characters or hyphens. *
** Alphabetic characters must be lowercase. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
** Must be unique for all clusters within an Amazon Web Services account. *
** Constraints: *
** Must contain from 1 to 63 alphanumeric characters or hyphens. *
** Alphabetic characters must be lowercase. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
** Must be unique for all clusters within an Amazon Web Services account. *
** The identifier of the cluster that will be created from restoring the snapshot. *
** Constraints: *
** Must contain from 1 to 63 alphanumeric characters or hyphens. *
** Alphabetic characters must be lowercase. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
** Must be unique for all clusters within an Amazon Web Services account. *
** Constraints: *
** Must contain from 1 to 63 alphanumeric characters or hyphens. *
** Alphabetic characters must be lowercase. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
** Must be unique for all clusters within an Amazon Web Services account. *
*
* The name of the snapshot from which to create the new cluster. This parameter isn't case sensitive. You must
* specify this parameter or snapshotArn
, but not both.
*
* Example: my-snapshot-id
*
snapshotArn
, but not both.
*
* Example: my-snapshot-id
*/
public void setSnapshotIdentifier(String snapshotIdentifier) {
this.snapshotIdentifier = snapshotIdentifier;
}
/**
*
* The name of the snapshot from which to create the new cluster. This parameter isn't case sensitive. You must
* specify this parameter or snapshotArn
, but not both.
*
* Example: my-snapshot-id
*
snapshotArn
, but not both.
*
* Example: my-snapshot-id
*/
public String getSnapshotIdentifier() {
return this.snapshotIdentifier;
}
/**
*
* The name of the snapshot from which to create the new cluster. This parameter isn't case sensitive. You must
* specify this parameter or snapshotArn
, but not both.
*
* Example: my-snapshot-id
*
snapshotArn
, but not both.
*
* Example: my-snapshot-id
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreFromClusterSnapshotRequest withSnapshotIdentifier(String snapshotIdentifier) {
setSnapshotIdentifier(snapshotIdentifier);
return this;
}
/**
*
* The Amazon Resource Name (ARN) of the snapshot associated with the message to restore from a cluster. You must
* specify this parameter or snapshotIdentifier
, but not both.
*
snapshotIdentifier
, but not both.
*/
public void setSnapshotArn(String snapshotArn) {
this.snapshotArn = snapshotArn;
}
/**
*
* The Amazon Resource Name (ARN) of the snapshot associated with the message to restore from a cluster. You must
* specify this parameter or snapshotIdentifier
, but not both.
*
snapshotIdentifier
, but not both.
*/
public String getSnapshotArn() {
return this.snapshotArn;
}
/**
*
* The Amazon Resource Name (ARN) of the snapshot associated with the message to restore from a cluster. You must
* specify this parameter or snapshotIdentifier
, but not both.
*
snapshotIdentifier
, but not both.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreFromClusterSnapshotRequest withSnapshotArn(String snapshotArn) {
setSnapshotArn(snapshotArn);
return this;
}
/**
* * The name of the cluster the source snapshot was created from. This parameter is required if your IAM user has a * policy containing a snapshot resource element that specifies anything other than * for the cluster name. *
* * @param snapshotClusterIdentifier * The name of the cluster the source snapshot was created from. This parameter is required if your IAM user * has a policy containing a snapshot resource element that specifies anything other than * for the cluster * name. */ public void setSnapshotClusterIdentifier(String snapshotClusterIdentifier) { this.snapshotClusterIdentifier = snapshotClusterIdentifier; } /** ** The name of the cluster the source snapshot was created from. This parameter is required if your IAM user has a * policy containing a snapshot resource element that specifies anything other than * for the cluster name. *
* * @return The name of the cluster the source snapshot was created from. This parameter is required if your IAM user * has a policy containing a snapshot resource element that specifies anything other than * for the cluster * name. */ public String getSnapshotClusterIdentifier() { return this.snapshotClusterIdentifier; } /** ** The name of the cluster the source snapshot was created from. This parameter is required if your IAM user has a * policy containing a snapshot resource element that specifies anything other than * for the cluster name. *
* * @param snapshotClusterIdentifier * The name of the cluster the source snapshot was created from. This parameter is required if your IAM user * has a policy containing a snapshot resource element that specifies anything other than * for the cluster * name. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreFromClusterSnapshotRequest withSnapshotClusterIdentifier(String snapshotClusterIdentifier) { setSnapshotClusterIdentifier(snapshotClusterIdentifier); return this; } /** ** The port number on which the cluster accepts connections. *
** Default: The same port as the original cluster. *
*
* Constraints: Must be between 1115
and 65535
.
*
* Default: The same port as the original cluster. *
*
* Constraints: Must be between 1115
and 65535
.
*/
public void setPort(Integer port) {
this.port = port;
}
/**
*
* The port number on which the cluster accepts connections. *
** Default: The same port as the original cluster. *
*
* Constraints: Must be between 1115
and 65535
.
*
* Default: The same port as the original cluster. *
*
* Constraints: Must be between 1115
and 65535
.
*/
public Integer getPort() {
return this.port;
}
/**
*
* The port number on which the cluster accepts connections. *
** Default: The same port as the original cluster. *
*
* Constraints: Must be between 1115
and 65535
.
*
* Default: The same port as the original cluster. *
*
* Constraints: Must be between 1115
and 65535
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreFromClusterSnapshotRequest withPort(Integer port) {
setPort(port);
return this;
}
/**
*
* The Amazon EC2 Availability Zone in which to restore the cluster. *
** Default: A random, system-chosen Availability Zone. *
*
* Example: us-east-2a
*
* Default: A random, system-chosen Availability Zone. *
*
* Example: us-east-2a
*/
public void setAvailabilityZone(String availabilityZone) {
this.availabilityZone = availabilityZone;
}
/**
*
* The Amazon EC2 Availability Zone in which to restore the cluster. *
** Default: A random, system-chosen Availability Zone. *
*
* Example: us-east-2a
*
* Default: A random, system-chosen Availability Zone. *
*
* Example: us-east-2a
*/
public String getAvailabilityZone() {
return this.availabilityZone;
}
/**
*
* The Amazon EC2 Availability Zone in which to restore the cluster. *
** Default: A random, system-chosen Availability Zone. *
*
* Example: us-east-2a
*
* Default: A random, system-chosen Availability Zone. *
*
* Example: us-east-2a
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreFromClusterSnapshotRequest withAvailabilityZone(String availabilityZone) {
setAvailabilityZone(availabilityZone);
return this;
}
/**
*
* If true
, major version upgrades can be applied during the maintenance window to the Amazon Redshift
* engine that is running on the cluster.
*
* Default: true
*
true
, major version upgrades can be applied during the maintenance window to the Amazon
* Redshift engine that is running on the cluster.
*
* Default: true
*/
public void setAllowVersionUpgrade(Boolean allowVersionUpgrade) {
this.allowVersionUpgrade = allowVersionUpgrade;
}
/**
*
* If true
, major version upgrades can be applied during the maintenance window to the Amazon Redshift
* engine that is running on the cluster.
*
* Default: true
*
true
, major version upgrades can be applied during the maintenance window to the Amazon
* Redshift engine that is running on the cluster.
*
* Default: true
*/
public Boolean getAllowVersionUpgrade() {
return this.allowVersionUpgrade;
}
/**
*
* If true
, major version upgrades can be applied during the maintenance window to the Amazon Redshift
* engine that is running on the cluster.
*
* Default: true
*
true
, major version upgrades can be applied during the maintenance window to the Amazon
* Redshift engine that is running on the cluster.
*
* Default: true
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreFromClusterSnapshotRequest withAllowVersionUpgrade(Boolean allowVersionUpgrade) {
setAllowVersionUpgrade(allowVersionUpgrade);
return this;
}
/**
*
* If true
, major version upgrades can be applied during the maintenance window to the Amazon Redshift
* engine that is running on the cluster.
*
* Default: true
*
true
, major version upgrades can be applied during the maintenance window to the Amazon
* Redshift engine that is running on the cluster.
*
* Default: true
*/
public Boolean isAllowVersionUpgrade() {
return this.allowVersionUpgrade;
}
/**
*
* The name of the subnet group where you want to cluster restored. *
** A snapshot of cluster in VPC can be restored only in VPC. Therefore, you must provide subnet group name where you * want the cluster restored. *
* * @param clusterSubnetGroupName * The name of the subnet group where you want to cluster restored. ** A snapshot of cluster in VPC can be restored only in VPC. Therefore, you must provide subnet group name * where you want the cluster restored. */ public void setClusterSubnetGroupName(String clusterSubnetGroupName) { this.clusterSubnetGroupName = clusterSubnetGroupName; } /** *
* The name of the subnet group where you want to cluster restored. *
** A snapshot of cluster in VPC can be restored only in VPC. Therefore, you must provide subnet group name where you * want the cluster restored. *
* * @return The name of the subnet group where you want to cluster restored. ** A snapshot of cluster in VPC can be restored only in VPC. Therefore, you must provide subnet group name * where you want the cluster restored. */ public String getClusterSubnetGroupName() { return this.clusterSubnetGroupName; } /** *
* The name of the subnet group where you want to cluster restored. *
** A snapshot of cluster in VPC can be restored only in VPC. Therefore, you must provide subnet group name where you * want the cluster restored. *
* * @param clusterSubnetGroupName * The name of the subnet group where you want to cluster restored. ** A snapshot of cluster in VPC can be restored only in VPC. Therefore, you must provide subnet group name * where you want the cluster restored. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreFromClusterSnapshotRequest withClusterSubnetGroupName(String clusterSubnetGroupName) { setClusterSubnetGroupName(clusterSubnetGroupName); return this; } /** *
* If true
, the cluster can be accessed from a public network.
*
true
, the cluster can be accessed from a public network.
*/
public void setPubliclyAccessible(Boolean publiclyAccessible) {
this.publiclyAccessible = publiclyAccessible;
}
/**
*
* If true
, the cluster can be accessed from a public network.
*
true
, the cluster can be accessed from a public network.
*/
public Boolean getPubliclyAccessible() {
return this.publiclyAccessible;
}
/**
*
* If true
, the cluster can be accessed from a public network.
*
true
, the cluster can be accessed from a public network.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreFromClusterSnapshotRequest withPubliclyAccessible(Boolean publiclyAccessible) {
setPubliclyAccessible(publiclyAccessible);
return this;
}
/**
*
* If true
, the cluster can be accessed from a public network.
*
true
, the cluster can be accessed from a public network.
*/
public Boolean isPubliclyAccessible() {
return this.publiclyAccessible;
}
/**
* * The Amazon Web Services account used to create or copy the snapshot. Required if you are restoring a snapshot you * do not own, optional if you own the snapshot. *
* * @param ownerAccount * The Amazon Web Services account used to create or copy the snapshot. Required if you are restoring a * snapshot you do not own, optional if you own the snapshot. */ public void setOwnerAccount(String ownerAccount) { this.ownerAccount = ownerAccount; } /** ** The Amazon Web Services account used to create or copy the snapshot. Required if you are restoring a snapshot you * do not own, optional if you own the snapshot. *
* * @return The Amazon Web Services account used to create or copy the snapshot. Required if you are restoring a * snapshot you do not own, optional if you own the snapshot. */ public String getOwnerAccount() { return this.ownerAccount; } /** ** The Amazon Web Services account used to create or copy the snapshot. Required if you are restoring a snapshot you * do not own, optional if you own the snapshot. *
* * @param ownerAccount * The Amazon Web Services account used to create or copy the snapshot. Required if you are restoring a * snapshot you do not own, optional if you own the snapshot. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreFromClusterSnapshotRequest withOwnerAccount(String ownerAccount) { setOwnerAccount(ownerAccount); return this; } /** ** Specifies the name of the HSM client certificate the Amazon Redshift cluster uses to retrieve the data encryption * keys stored in an HSM. *
* * @param hsmClientCertificateIdentifier * Specifies the name of the HSM client certificate the Amazon Redshift cluster uses to retrieve the data * encryption keys stored in an HSM. */ public void setHsmClientCertificateIdentifier(String hsmClientCertificateIdentifier) { this.hsmClientCertificateIdentifier = hsmClientCertificateIdentifier; } /** ** Specifies the name of the HSM client certificate the Amazon Redshift cluster uses to retrieve the data encryption * keys stored in an HSM. *
* * @return Specifies the name of the HSM client certificate the Amazon Redshift cluster uses to retrieve the data * encryption keys stored in an HSM. */ public String getHsmClientCertificateIdentifier() { return this.hsmClientCertificateIdentifier; } /** ** Specifies the name of the HSM client certificate the Amazon Redshift cluster uses to retrieve the data encryption * keys stored in an HSM. *
* * @param hsmClientCertificateIdentifier * Specifies the name of the HSM client certificate the Amazon Redshift cluster uses to retrieve the data * encryption keys stored in an HSM. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreFromClusterSnapshotRequest withHsmClientCertificateIdentifier(String hsmClientCertificateIdentifier) { setHsmClientCertificateIdentifier(hsmClientCertificateIdentifier); return this; } /** ** Specifies the name of the HSM configuration that contains the information the Amazon Redshift cluster can use to * retrieve and store keys in an HSM. *
* * @param hsmConfigurationIdentifier * Specifies the name of the HSM configuration that contains the information the Amazon Redshift cluster can * use to retrieve and store keys in an HSM. */ public void setHsmConfigurationIdentifier(String hsmConfigurationIdentifier) { this.hsmConfigurationIdentifier = hsmConfigurationIdentifier; } /** ** Specifies the name of the HSM configuration that contains the information the Amazon Redshift cluster can use to * retrieve and store keys in an HSM. *
* * @return Specifies the name of the HSM configuration that contains the information the Amazon Redshift cluster can * use to retrieve and store keys in an HSM. */ public String getHsmConfigurationIdentifier() { return this.hsmConfigurationIdentifier; } /** ** Specifies the name of the HSM configuration that contains the information the Amazon Redshift cluster can use to * retrieve and store keys in an HSM. *
* * @param hsmConfigurationIdentifier * Specifies the name of the HSM configuration that contains the information the Amazon Redshift cluster can * use to retrieve and store keys in an HSM. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreFromClusterSnapshotRequest withHsmConfigurationIdentifier(String hsmConfigurationIdentifier) { setHsmConfigurationIdentifier(hsmConfigurationIdentifier); return this; } /** ** The Elastic IP (EIP) address for the cluster. Don't specify the Elastic IP address for a publicly accessible * cluster with availability zone relocation turned on. *
* * @param elasticIp * The Elastic IP (EIP) address for the cluster. Don't specify the Elastic IP address for a publicly * accessible cluster with availability zone relocation turned on. */ public void setElasticIp(String elasticIp) { this.elasticIp = elasticIp; } /** ** The Elastic IP (EIP) address for the cluster. Don't specify the Elastic IP address for a publicly accessible * cluster with availability zone relocation turned on. *
* * @return The Elastic IP (EIP) address for the cluster. Don't specify the Elastic IP address for a publicly * accessible cluster with availability zone relocation turned on. */ public String getElasticIp() { return this.elasticIp; } /** ** The Elastic IP (EIP) address for the cluster. Don't specify the Elastic IP address for a publicly accessible * cluster with availability zone relocation turned on. *
* * @param elasticIp * The Elastic IP (EIP) address for the cluster. Don't specify the Elastic IP address for a publicly * accessible cluster with availability zone relocation turned on. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreFromClusterSnapshotRequest withElasticIp(String elasticIp) { setElasticIp(elasticIp); return this; } /** ** The name of the parameter group to be associated with this cluster. *
** Default: The default Amazon Redshift cluster parameter group. For information about the default parameter group, * go to Working with * Amazon Redshift Parameter Groups. *
** Constraints: *
** Must be 1 to 255 alphanumeric characters or hyphens. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
** Default: The default Amazon Redshift cluster parameter group. For information about the default parameter * group, go to Working with * Amazon Redshift Parameter Groups. *
** Constraints: *
** Must be 1 to 255 alphanumeric characters or hyphens. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
** The name of the parameter group to be associated with this cluster. *
** Default: The default Amazon Redshift cluster parameter group. For information about the default parameter group, * go to Working with * Amazon Redshift Parameter Groups. *
** Constraints: *
** Must be 1 to 255 alphanumeric characters or hyphens. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
** Default: The default Amazon Redshift cluster parameter group. For information about the default parameter * group, go to Working with * Amazon Redshift Parameter Groups. *
** Constraints: *
** Must be 1 to 255 alphanumeric characters or hyphens. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
** The name of the parameter group to be associated with this cluster. *
** Default: The default Amazon Redshift cluster parameter group. For information about the default parameter group, * go to Working with * Amazon Redshift Parameter Groups. *
** Constraints: *
** Must be 1 to 255 alphanumeric characters or hyphens. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
** Default: The default Amazon Redshift cluster parameter group. For information about the default parameter * group, go to Working with * Amazon Redshift Parameter Groups. *
** Constraints: *
** Must be 1 to 255 alphanumeric characters or hyphens. *
** First character must be a letter. *
** Cannot end with a hyphen or contain two consecutive hyphens. *
** A list of security groups to be associated with this cluster. *
** Default: The default cluster security group for Amazon Redshift. *
** Cluster security groups only apply to clusters outside of VPCs. *
* * @return A list of security groups to be associated with this cluster. ** Default: The default cluster security group for Amazon Redshift. *
*
* Cluster security groups only apply to clusters outside of VPCs.
*/
public java.util.List
* A list of security groups to be associated with this cluster.
*
* Default: The default cluster security group for Amazon Redshift.
*
* Cluster security groups only apply to clusters outside of VPCs.
*
* Default: The default cluster security group for Amazon Redshift. *
*
* Cluster security groups only apply to clusters outside of VPCs.
*/
public void setClusterSecurityGroups(java.util.Collection
* A list of security groups to be associated with this cluster.
*
* Default: The default cluster security group for Amazon Redshift.
*
* Cluster security groups only apply to clusters outside of VPCs.
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setClusterSecurityGroups(java.util.Collection)} or
* {@link #withClusterSecurityGroups(java.util.Collection)} if you want to override the existing values.
*
* Default: The default cluster security group for Amazon Redshift. *
*
* Cluster security groups only apply to clusters outside of VPCs.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreFromClusterSnapshotRequest withClusterSecurityGroups(String... clusterSecurityGroups) {
if (this.clusterSecurityGroups == null) {
setClusterSecurityGroups(new com.amazonaws.internal.SdkInternalList
* A list of security groups to be associated with this cluster.
*
* Default: The default cluster security group for Amazon Redshift.
*
* Cluster security groups only apply to clusters outside of VPCs.
*
* Default: The default cluster security group for Amazon Redshift. *
*
* Cluster security groups only apply to clusters outside of VPCs.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreFromClusterSnapshotRequest withClusterSecurityGroups(java.util.Collection
* A list of Virtual Private Cloud (VPC) security groups to be associated with the cluster.
*
* Default: The default VPC security group is associated with the cluster.
*
* VPC security groups only apply to clusters in VPCs.
*
* Default: The default VPC security group is associated with the cluster. *
*
* VPC security groups only apply to clusters in VPCs.
*/
public java.util.List
* A list of Virtual Private Cloud (VPC) security groups to be associated with the cluster.
*
* Default: The default VPC security group is associated with the cluster.
*
* VPC security groups only apply to clusters in VPCs.
*
* Default: The default VPC security group is associated with the cluster. *
*
* VPC security groups only apply to clusters in VPCs.
*/
public void setVpcSecurityGroupIds(java.util.Collection
* A list of Virtual Private Cloud (VPC) security groups to be associated with the cluster.
*
* Default: The default VPC security group is associated with the cluster.
*
* VPC security groups only apply to clusters in VPCs.
*
* 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.
*
* Default: The default VPC security group is associated with the cluster. *
*
* VPC security groups only apply to clusters in VPCs.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreFromClusterSnapshotRequest withVpcSecurityGroupIds(String... vpcSecurityGroupIds) {
if (this.vpcSecurityGroupIds == null) {
setVpcSecurityGroupIds(new com.amazonaws.internal.SdkInternalList
* A list of Virtual Private Cloud (VPC) security groups to be associated with the cluster.
*
* Default: The default VPC security group is associated with the cluster.
*
* VPC security groups only apply to clusters in VPCs.
*
* Default: The default VPC security group is associated with the cluster. *
*
* VPC security groups only apply to clusters in VPCs.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreFromClusterSnapshotRequest withVpcSecurityGroupIds(java.util.Collection
* The weekly time range (in UTC) during which automated cluster maintenance can occur.
*
* Format:
* Default: The value selected for the cluster from which the snapshot was taken. For more information about the
* time blocks for each region, see Maintenance Windows in Amazon Redshift Cluster Management Guide.
*
* Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun
*
* Constraints: Minimum 30-minute window.
* ddd:hh24:mi-ddd:hh24:mi
*
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* Default: The value selected for the cluster from which the snapshot was taken. For more information about * the time blocks for each region, see Maintenance Windows in Amazon Redshift Cluster Management 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 (in UTC) during which automated cluster maintenance can occur. *
*
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* Default: The value selected for the cluster from which the snapshot was taken. For more information about the * time blocks for each region, see Maintenance Windows in Amazon Redshift Cluster Management Guide. *
** Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun *
** Constraints: Minimum 30-minute window. *
* * @return The weekly time range (in UTC) during which automated cluster maintenance can occur. *
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* Default: The value selected for the cluster from which the snapshot was taken. For more information about * the time blocks for each region, see Maintenance Windows in Amazon Redshift Cluster Management 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 (in UTC) during which automated cluster maintenance can occur. *
*
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* Default: The value selected for the cluster from which the snapshot was taken. For more information about the * time blocks for each region, see Maintenance Windows in Amazon Redshift Cluster Management Guide. *
** Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun *
** Constraints: Minimum 30-minute window. *
* * @param preferredMaintenanceWindow * The weekly time range (in UTC) during which automated cluster maintenance can occur. *
* Format: ddd:hh24:mi-ddd:hh24:mi
*
* Default: The value selected for the cluster from which the snapshot was taken. For more information about * the time blocks for each region, see Maintenance Windows in Amazon Redshift Cluster Management 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 RestoreFromClusterSnapshotRequest withPreferredMaintenanceWindow(String preferredMaintenanceWindow) { setPreferredMaintenanceWindow(preferredMaintenanceWindow); return this; } /** *
* The number of days that automated snapshots are retained. If the value is 0, automated snapshots are disabled. * Even if automated snapshots are disabled, you can still create manual snapshots when you want with * CreateClusterSnapshot. *
** You can't disable automated snapshots for RA3 node types. Set the automated retention period from 1-35 days. *
** Default: The value selected for the cluster from which the snapshot was taken. *
** Constraints: Must be a value from 0 to 35. *
* * @param automatedSnapshotRetentionPeriod * The number of days that automated snapshots are retained. If the value is 0, automated snapshots are * disabled. Even if automated snapshots are disabled, you can still create manual snapshots when you want * with CreateClusterSnapshot. ** You can't disable automated snapshots for RA3 node types. Set the automated retention period from 1-35 * days. *
** Default: The value selected for the cluster from which the snapshot was taken. *
** Constraints: Must be a value from 0 to 35. */ public void setAutomatedSnapshotRetentionPeriod(Integer automatedSnapshotRetentionPeriod) { this.automatedSnapshotRetentionPeriod = automatedSnapshotRetentionPeriod; } /** *
* The number of days that automated snapshots are retained. If the value is 0, automated snapshots are disabled. * Even if automated snapshots are disabled, you can still create manual snapshots when you want with * CreateClusterSnapshot. *
** You can't disable automated snapshots for RA3 node types. Set the automated retention period from 1-35 days. *
** Default: The value selected for the cluster from which the snapshot was taken. *
** Constraints: Must be a value from 0 to 35. *
* * @return The number of days that automated snapshots are retained. If the value is 0, automated snapshots are * disabled. Even if automated snapshots are disabled, you can still create manual snapshots when you want * with CreateClusterSnapshot. ** You can't disable automated snapshots for RA3 node types. Set the automated retention period from 1-35 * days. *
** Default: The value selected for the cluster from which the snapshot was taken. *
** Constraints: Must be a value from 0 to 35. */ public Integer getAutomatedSnapshotRetentionPeriod() { return this.automatedSnapshotRetentionPeriod; } /** *
* The number of days that automated snapshots are retained. If the value is 0, automated snapshots are disabled. * Even if automated snapshots are disabled, you can still create manual snapshots when you want with * CreateClusterSnapshot. *
** You can't disable automated snapshots for RA3 node types. Set the automated retention period from 1-35 days. *
** Default: The value selected for the cluster from which the snapshot was taken. *
** Constraints: Must be a value from 0 to 35. *
* * @param automatedSnapshotRetentionPeriod * The number of days that automated snapshots are retained. If the value is 0, automated snapshots are * disabled. Even if automated snapshots are disabled, you can still create manual snapshots when you want * with CreateClusterSnapshot. ** You can't disable automated snapshots for RA3 node types. Set the automated retention period from 1-35 * days. *
** Default: The value selected for the cluster from which the snapshot was taken. *
** Constraints: Must be a value from 0 to 35. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreFromClusterSnapshotRequest withAutomatedSnapshotRetentionPeriod(Integer automatedSnapshotRetentionPeriod) { setAutomatedSnapshotRetentionPeriod(automatedSnapshotRetentionPeriod); return this; } /** *
* The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained * indefinitely. This setting doesn't change the retention period of existing snapshots. *
** The value must be either -1 or an integer between 1 and 3,653. *
* * @param manualSnapshotRetentionPeriod * The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained * indefinitely. This setting doesn't change the retention period of existing snapshots. ** The value must be either -1 or an integer between 1 and 3,653. */ public void setManualSnapshotRetentionPeriod(Integer manualSnapshotRetentionPeriod) { this.manualSnapshotRetentionPeriod = manualSnapshotRetentionPeriod; } /** *
* The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained * indefinitely. This setting doesn't change the retention period of existing snapshots. *
** The value must be either -1 or an integer between 1 and 3,653. *
* * @return The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained * indefinitely. This setting doesn't change the retention period of existing snapshots. ** The value must be either -1 or an integer between 1 and 3,653. */ public Integer getManualSnapshotRetentionPeriod() { return this.manualSnapshotRetentionPeriod; } /** *
* The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained * indefinitely. This setting doesn't change the retention period of existing snapshots. *
** The value must be either -1 or an integer between 1 and 3,653. *
* * @param manualSnapshotRetentionPeriod * The default number of days to retain a manual snapshot. If the value is -1, the snapshot is retained * indefinitely. This setting doesn't change the retention period of existing snapshots. ** The value must be either -1 or an integer between 1 and 3,653. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreFromClusterSnapshotRequest withManualSnapshotRetentionPeriod(Integer manualSnapshotRetentionPeriod) { setManualSnapshotRetentionPeriod(manualSnapshotRetentionPeriod); return this; } /** *
* The Key Management Service (KMS) key ID of the encryption key that encrypts data in the cluster restored from a * shared snapshot. You can also provide the key ID when you restore from an unencrypted snapshot to an encrypted * cluster in the same account. Additionally, you can specify a new KMS key ID when you restore from an encrypted * snapshot in the same account in order to change it. In that case, the restored cluster is encrypted with the new * KMS key ID. *
* * @param kmsKeyId * The Key Management Service (KMS) key ID of the encryption key that encrypts data in the cluster restored * from a shared snapshot. You can also provide the key ID when you restore from an unencrypted snapshot to * an encrypted cluster in the same account. Additionally, you can specify a new KMS key ID when you restore * from an encrypted snapshot in the same account in order to change it. In that case, the restored cluster * is encrypted with the new KMS key ID. */ public void setKmsKeyId(String kmsKeyId) { this.kmsKeyId = kmsKeyId; } /** ** The Key Management Service (KMS) key ID of the encryption key that encrypts data in the cluster restored from a * shared snapshot. You can also provide the key ID when you restore from an unencrypted snapshot to an encrypted * cluster in the same account. Additionally, you can specify a new KMS key ID when you restore from an encrypted * snapshot in the same account in order to change it. In that case, the restored cluster is encrypted with the new * KMS key ID. *
* * @return The Key Management Service (KMS) key ID of the encryption key that encrypts data in the cluster restored * from a shared snapshot. You can also provide the key ID when you restore from an unencrypted snapshot to * an encrypted cluster in the same account. Additionally, you can specify a new KMS key ID when you restore * from an encrypted snapshot in the same account in order to change it. In that case, the restored cluster * is encrypted with the new KMS key ID. */ public String getKmsKeyId() { return this.kmsKeyId; } /** ** The Key Management Service (KMS) key ID of the encryption key that encrypts data in the cluster restored from a * shared snapshot. You can also provide the key ID when you restore from an unencrypted snapshot to an encrypted * cluster in the same account. Additionally, you can specify a new KMS key ID when you restore from an encrypted * snapshot in the same account in order to change it. In that case, the restored cluster is encrypted with the new * KMS key ID. *
* * @param kmsKeyId * The Key Management Service (KMS) key ID of the encryption key that encrypts data in the cluster restored * from a shared snapshot. You can also provide the key ID when you restore from an unencrypted snapshot to * an encrypted cluster in the same account. Additionally, you can specify a new KMS key ID when you restore * from an encrypted snapshot in the same account in order to change it. In that case, the restored cluster * is encrypted with the new KMS key ID. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreFromClusterSnapshotRequest withKmsKeyId(String kmsKeyId) { setKmsKeyId(kmsKeyId); return this; } /** ** The node type that the restored cluster will be provisioned with. *
** Default: The node type of the cluster from which the snapshot was taken. You can modify this if you are using any * DS node type. In that case, you can choose to restore into another DS node type of the same size. For example, * you can restore ds1.8xlarge into ds2.8xlarge, or ds1.xlarge into ds2.xlarge. If you have a DC instance type, you * must restore into that same instance type and size. In other words, you can only restore a dc1.large instance * type into another dc1.large instance type or dc2.large instance type. You can't restore dc1.8xlarge to * dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize to a dc2.8large cluster. For more information * about node types, see * About Clusters and Nodes in the Amazon Redshift Cluster Management Guide. *
* * @param nodeType * The node type that the restored cluster will be provisioned with. ** Default: The node type of the cluster from which the snapshot was taken. You can modify this if you are * using any DS node type. In that case, you can choose to restore into another DS node type of the same * size. For example, you can restore ds1.8xlarge into ds2.8xlarge, or ds1.xlarge into ds2.xlarge. If you * have a DC instance type, you must restore into that same instance type and size. In other words, you can * only restore a dc1.large instance type into another dc1.large instance type or dc2.large instance type. * You can't restore dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize to a * dc2.8large cluster. For more information about node types, see * About Clusters and Nodes in the Amazon Redshift Cluster Management Guide. */ public void setNodeType(String nodeType) { this.nodeType = nodeType; } /** *
* The node type that the restored cluster will be provisioned with. *
** Default: The node type of the cluster from which the snapshot was taken. You can modify this if you are using any * DS node type. In that case, you can choose to restore into another DS node type of the same size. For example, * you can restore ds1.8xlarge into ds2.8xlarge, or ds1.xlarge into ds2.xlarge. If you have a DC instance type, you * must restore into that same instance type and size. In other words, you can only restore a dc1.large instance * type into another dc1.large instance type or dc2.large instance type. You can't restore dc1.8xlarge to * dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize to a dc2.8large cluster. For more information * about node types, see * About Clusters and Nodes in the Amazon Redshift Cluster Management Guide. *
* * @return The node type that the restored cluster will be provisioned with. ** Default: The node type of the cluster from which the snapshot was taken. You can modify this if you are * using any DS node type. In that case, you can choose to restore into another DS node type of the same * size. For example, you can restore ds1.8xlarge into ds2.8xlarge, or ds1.xlarge into ds2.xlarge. If you * have a DC instance type, you must restore into that same instance type and size. In other words, you can * only restore a dc1.large instance type into another dc1.large instance type or dc2.large instance type. * You can't restore dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize to a * dc2.8large cluster. For more information about node types, see About Clusters and Nodes in the Amazon Redshift Cluster Management Guide. */ public String getNodeType() { return this.nodeType; } /** *
* The node type that the restored cluster will be provisioned with. *
** Default: The node type of the cluster from which the snapshot was taken. You can modify this if you are using any * DS node type. In that case, you can choose to restore into another DS node type of the same size. For example, * you can restore ds1.8xlarge into ds2.8xlarge, or ds1.xlarge into ds2.xlarge. If you have a DC instance type, you * must restore into that same instance type and size. In other words, you can only restore a dc1.large instance * type into another dc1.large instance type or dc2.large instance type. You can't restore dc1.8xlarge to * dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize to a dc2.8large cluster. For more information * about node types, see * About Clusters and Nodes in the Amazon Redshift Cluster Management Guide. *
* * @param nodeType * The node type that the restored cluster will be provisioned with. ** Default: The node type of the cluster from which the snapshot was taken. You can modify this if you are * using any DS node type. In that case, you can choose to restore into another DS node type of the same * size. For example, you can restore ds1.8xlarge into ds2.8xlarge, or ds1.xlarge into ds2.xlarge. If you * have a DC instance type, you must restore into that same instance type and size. In other words, you can * only restore a dc1.large instance type into another dc1.large instance type or dc2.large instance type. * You can't restore dc1.8xlarge to dc2.8xlarge. First restore to a dc1.8xlarge cluster, then resize to a * dc2.8large cluster. For more information about node types, see * About Clusters and Nodes in the Amazon Redshift Cluster Management Guide. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreFromClusterSnapshotRequest withNodeType(String nodeType) { setNodeType(nodeType); return this; } /** *
* An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster * that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the * Amazon Redshift Cluster Management Guide. *
*
* If this option is true
, enhanced VPC routing is enabled.
*
* Default: false *
* * @param enhancedVpcRouting * An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a * cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing * in the Amazon Redshift Cluster Management Guide. *
* If this option is true
, enhanced VPC routing is enabled.
*
* Default: false */ public void setEnhancedVpcRouting(Boolean enhancedVpcRouting) { this.enhancedVpcRouting = enhancedVpcRouting; } /** *
* An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster * that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the * Amazon Redshift Cluster Management Guide. *
*
* If this option is true
, enhanced VPC routing is enabled.
*
* Default: false *
* * @return An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a * cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC * Routing in the Amazon Redshift Cluster Management Guide. *
* If this option is true
, enhanced VPC routing is enabled.
*
* Default: false */ public Boolean getEnhancedVpcRouting() { return this.enhancedVpcRouting; } /** *
* An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster * that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the * Amazon Redshift Cluster Management Guide. *
*
* If this option is true
, enhanced VPC routing is enabled.
*
* Default: false *
* * @param enhancedVpcRouting * An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a * cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing * in the Amazon Redshift Cluster Management Guide. *
* If this option is true
, enhanced VPC routing is enabled.
*
* Default: false * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreFromClusterSnapshotRequest withEnhancedVpcRouting(Boolean enhancedVpcRouting) { setEnhancedVpcRouting(enhancedVpcRouting); return this; } /** *
* An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a cluster * that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC Routing in the * Amazon Redshift Cluster Management Guide. *
*
* If this option is true
, enhanced VPC routing is enabled.
*
* Default: false *
* * @return An option that specifies whether to create the cluster with enhanced VPC routing enabled. To create a * cluster that uses enhanced VPC routing, the cluster must be in a VPC. For more information, see Enhanced VPC * Routing in the Amazon Redshift Cluster Management Guide. *
* If this option is true
, enhanced VPC routing is enabled.
*
* Default: false */ public Boolean isEnhancedVpcRouting() { return this.enhancedVpcRouting; } /** *
* Reserved. *
* * @param additionalInfo * Reserved. */ public void setAdditionalInfo(String additionalInfo) { this.additionalInfo = additionalInfo; } /** ** Reserved. *
* * @return Reserved. */ public String getAdditionalInfo() { return this.additionalInfo; } /** ** Reserved. *
* * @param additionalInfo * Reserved. * @return Returns a reference to this object so that method calls can be chained together. */ public RestoreFromClusterSnapshotRequest withAdditionalInfo(String additionalInfo) { setAdditionalInfo(additionalInfo); return this; } /** ** A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other Amazon Web * Services services. You must supply the IAM roles in their Amazon Resource Name (ARN) format. *
** The maximum number of IAM roles that you can associate is subject to a quota. For more information, go to Quotas and limits in the * Amazon Redshift Cluster Management Guide. *
* * @return A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other * Amazon Web Services services. You must supply the IAM roles in their Amazon Resource Name (ARN) format. * *
* The maximum number of IAM roles that you can associate is subject to a quota. For more information, go to
* Quotas and
* limits in the Amazon Redshift Cluster Management Guide.
*/
public java.util.List
* A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other Amazon Web
* Services services. You must supply the IAM roles in their Amazon Resource Name (ARN) format.
*
* The maximum number of IAM roles that you can associate is subject to a quota. For more information, go to Quotas and limits in the
* Amazon Redshift Cluster Management Guide.
*
* The maximum number of IAM roles that you can associate is subject to a quota. For more information, go to
* Quotas and
* limits in the Amazon Redshift Cluster Management Guide.
*/
public void setIamRoles(java.util.Collection
* A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other Amazon Web
* Services services. You must supply the IAM roles in their Amazon Resource Name (ARN) format.
*
* The maximum number of IAM roles that you can associate is subject to a quota. For more information, go to Quotas and limits in the
* Amazon Redshift Cluster Management Guide.
*
* NOTE: This method appends the values to the existing list (if any). Use
* {@link #setIamRoles(java.util.Collection)} or {@link #withIamRoles(java.util.Collection)} if you want to override
* the existing values.
*
* The maximum number of IAM roles that you can associate is subject to a quota. For more information, go to
* Quotas and
* limits in the Amazon Redshift Cluster Management Guide.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreFromClusterSnapshotRequest withIamRoles(String... iamRoles) {
if (this.iamRoles == null) {
setIamRoles(new com.amazonaws.internal.SdkInternalList
* A list of Identity and Access Management (IAM) roles that can be used by the cluster to access other Amazon Web
* Services services. You must supply the IAM roles in their Amazon Resource Name (ARN) format.
*
* The maximum number of IAM roles that you can associate is subject to a quota. For more information, go to Quotas and limits in the
* Amazon Redshift Cluster Management Guide.
*
* The maximum number of IAM roles that you can associate is subject to a quota. For more information, go to
* Quotas and
* limits in the Amazon Redshift Cluster Management Guide.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreFromClusterSnapshotRequest withIamRoles(java.util.Collection
* The name of the maintenance track for the restored cluster. When you take a snapshot, the snapshot inherits the
*
* The name of the maintenance track for the restored cluster. When you take a snapshot, the snapshot inherits the
*
* The name of the maintenance track for the restored cluster. When you take a snapshot, the snapshot inherits the
*
* A unique identifier for the snapshot schedule.
*
* A unique identifier for the snapshot schedule.
*
* A unique identifier for the snapshot schedule.
*
* The number of nodes specified when provisioning the restored cluster.
*
* The number of nodes specified when provisioning the restored cluster.
*
* The number of nodes specified when provisioning the restored cluster.
*
* The option to enable relocation for an Amazon Redshift cluster between Availability Zones after the cluster is
* restored.
*
* The option to enable relocation for an Amazon Redshift cluster between Availability Zones after the cluster is
* restored.
*
* The option to enable relocation for an Amazon Redshift cluster between Availability Zones after the cluster is
* restored.
*
* The option to enable relocation for an Amazon Redshift cluster between Availability Zones after the cluster is
* restored.
*
* This parameter is retired. It does not set the AQUA configuration status. Amazon Redshift automatically
* determines whether to use AQUA (Advanced Query Accelerator).
*
* This parameter is retired. It does not set the AQUA configuration status. Amazon Redshift automatically
* determines whether to use AQUA (Advanced Query Accelerator).
*
* This parameter is retired. It does not set the AQUA configuration status. Amazon Redshift automatically
* determines whether to use AQUA (Advanced Query Accelerator).
*
* This parameter is retired. It does not set the AQUA configuration status. Amazon Redshift automatically
* determines whether to use AQUA (Advanced Query Accelerator).
*
* The Amazon Resource Name (ARN) for the IAM role that was set as default for the cluster when the cluster was last
* modified while it was restored from a snapshot.
*
* The Amazon Resource Name (ARN) for the IAM role that was set as default for the cluster when the cluster was last
* modified while it was restored from a snapshot.
*
* The Amazon Resource Name (ARN) for the IAM role that was set as default for the cluster when the cluster was last
* modified while it was restored from a snapshot.
*
* The identifier of the target reserved node offering.
*
* The identifier of the target reserved node offering.
*
* The identifier of the target reserved node offering.
*
* The identifier of the target reserved node offering.
*
* The identifier of the target reserved node offering.
*
* The identifier of the target reserved node offering.
*
* Enables support for restoring an unencrypted snapshot to a cluster encrypted with Key Management Service (KMS)
* and a customer managed key.
*
* Enables support for restoring an unencrypted snapshot to a cluster encrypted with Key Management Service (KMS)
* and a customer managed key.
*
* Enables support for restoring an unencrypted snapshot to a cluster encrypted with Key Management Service (KMS)
* and a customer managed key.
*
* Enables support for restoring an unencrypted snapshot to a cluster encrypted with Key Management Service (KMS)
* and a customer managed key.
* MaintenanceTrack
value from the cluster. The snapshot might be on a different track than the cluster
* that was the source for the snapshot. For example, suppose that you take a snapshot of a cluster that is on the
* current track and then change the cluster to be on the trailing track. In this case, the snapshot and the source
* cluster are on different tracks.
* MaintenanceTrack
value from the cluster. The snapshot might be on a different
* track than the cluster that was the source for the snapshot. For example, suppose that you take a snapshot
* of a cluster that is on the current track and then change the cluster to be on the trailing track. In this
* case, the snapshot and the source cluster are on different tracks.
*/
public void setMaintenanceTrackName(String maintenanceTrackName) {
this.maintenanceTrackName = maintenanceTrackName;
}
/**
* MaintenanceTrack
value from the cluster. The snapshot might be on a different track than the cluster
* that was the source for the snapshot. For example, suppose that you take a snapshot of a cluster that is on the
* current track and then change the cluster to be on the trailing track. In this case, the snapshot and the source
* cluster are on different tracks.
* MaintenanceTrack
value from the cluster. The snapshot might be on a different
* track than the cluster that was the source for the snapshot. For example, suppose that you take a
* snapshot of a cluster that is on the current track and then change the cluster to be on the trailing
* track. In this case, the snapshot and the source cluster are on different tracks.
*/
public String getMaintenanceTrackName() {
return this.maintenanceTrackName;
}
/**
* MaintenanceTrack
value from the cluster. The snapshot might be on a different track than the cluster
* that was the source for the snapshot. For example, suppose that you take a snapshot of a cluster that is on the
* current track and then change the cluster to be on the trailing track. In this case, the snapshot and the source
* cluster are on different tracks.
* MaintenanceTrack
value from the cluster. The snapshot might be on a different
* track than the cluster that was the source for the snapshot. For example, suppose that you take a snapshot
* of a cluster that is on the current track and then change the cluster to be on the trailing track. In this
* case, the snapshot and the source cluster are on different tracks.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public RestoreFromClusterSnapshotRequest withMaintenanceTrackName(String maintenanceTrackName) {
setMaintenanceTrackName(maintenanceTrackName);
return this;
}
/**
*