All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.redshift.model.CreateClusterRequest Maven / Gradle / Ivy

Go to download

The Amazon Web Services SDK for Java provides Java APIs for building software on AWS' cost-effective, scalable, and reliable infrastructure products. The AWS Java SDK allows developers to code against APIs for all of Amazon's infrastructure web services (Amazon S3, Amazon EC2, Amazon SQS, Amazon Relational Database Service, Amazon AutoScaling, etc).

The newest version!
/*
 * Copyright 2010-2014 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 com.amazonaws.AmazonWebServiceRequest;

/**
 * Container for the parameters to the {@link com.amazonaws.services.redshift.AmazonRedshift#createCluster(CreateClusterRequest) CreateCluster operation}.
 * 

* Creates a new cluster. To create the cluster in virtual private cloud * (VPC), you must provide cluster subnet group name. If you don't * provide a cluster subnet group name or the cluster security group * parameter, Amazon Redshift creates a non-VPC cluster, it associates * the default cluster security group with the cluster. For more * information about managing clusters, go to * Amazon Redshift Clusters * in the Amazon Redshift Management Guide . * *

* * @see com.amazonaws.services.redshift.AmazonRedshift#createCluster(CreateClusterRequest) */ public class CreateClusterRequest extends AmazonWebServiceRequest implements Serializable { /** * The name of the first database to be created when the cluster is * created.

To create additional databases after the cluster is * created, connect to the cluster with a SQL client and use SQL commands * to create a database. For more information, go to Create * a Database in the Amazon Redshift Database Developer Guide. *

Default: dev

Constraints:

  • Must contain 1 * to 64 alphanumeric characters.
  • Must contain only lowercase * letters.
  • Cannot be a word that is reserved by the service. A * list of reserved words can be found in Reserved * Words in the Amazon Redshift Database Developer Guide.
*/ private String dBName; /** * A unique identifier for the cluster. You use this identifier to refer * to the cluster for any subsequent cluster operations such as deleting * or modifying. The identifier also appears in the Amazon Redshift * console.

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 AWS account.
*

Example: myexamplecluster */ private String clusterIdentifier; /** * The type of the cluster. When cluster type is specified as

    *
  • single-node, the NumberOfNodes parameter is * not required.
  • multi-node, the * NumberOfNodes parameter is required.

Valid * Values: multi-node | single-node

Default: * multi-node */ private String clusterType; /** * The node type to be provisioned for the cluster. For information about * node types, go to * Working with Clusters in the Amazon Redshift Management * Guide.

Valid Values: dw1.xlarge | * dw1.8xlarge | dw2.large | * dw2.8xlarge. */ private String nodeType; /** * The user name associated with the master user account for the cluster * that is being created.

Constraints:

  • Must be 1 - 128 * alphanumeric characters.
  • First character must be a * letter.
  • Cannot be a reserved word. A list of reserved words * can be found in Reserved * Words in the Amazon Redshift Database Developer Guide.
*/ private String masterUsername; /** * The password associated with the master user account for the cluster * that is being created.

Constraints:

  • Must be between 8 and * 64 characters in length.
  • Must contain at least one uppercase * letter.
  • Must contain at least one lowercase letter.
  • *
  • Must contain one number.
  • Can be any printable ASCII * character (ASCII code 33 to 126) except ' (single quote), " (double * quote), \, /, @, or space.
*/ private String masterUserPassword; /** * A list of security groups to be associated with this cluster.

* Default: The default cluster security group for Amazon Redshift. */ private com.amazonaws.internal.ListWithAutoConstructFlag clusterSecurityGroups; /** * 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. */ private com.amazonaws.internal.ListWithAutoConstructFlag vpcSecurityGroupIds; /** * The name of a cluster subnet group to be associated with this cluster. *

If this parameter is not provided the resulting cluster will be * deployed outside virtual private cloud (VPC). */ private String clusterSubnetGroupName; /** * The EC2 Availability Zone (AZ) in which you want Amazon Redshift to * provision the cluster. For example, if you have several EC2 instances * running in a specific Availability Zone, then you might want the * cluster to be provisioned in the same zone in order to decrease * network latency.

Default: A random, system-chosen Availability * Zone in the region that is specified by the endpoint.

Example: * us-east-1d

Constraint: The specified Availability * Zone must be in the same region as the current endpoint. */ private String availabilityZone; /** * The weekly time range (in UTC) during which automated cluster * maintenance can occur.

Format: * ddd:hh24:mi-ddd:hh24:mi

Default: A 30-minute window * selected at random from an 8-hour block of time per region, occurring * on a random day of the week. The following list shows the time blocks * for each region from which the default maintenance windows are * assigned.

  • US-East (Northern Virginia) Region: * 03:00-11:00 UTC
  • US-West (Oregon) Region 06:00-14:00 * UTC
  • EU (Ireland) Region 22:00-06:00 UTC
  • *
  • Asia Pacific (Singapore) Region 14:00-22:00 UTC
  • *
  • Asia Pacific (Sydney) Region 12:00-20:00 UTC
  • *
  • Asia Pacific (Tokyo) Region 17:00-03:00 UTC
*

Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

Constraints: * Minimum 30-minute window. */ private String preferredMaintenanceWindow; /** * 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.
*/ private String clusterParameterGroupName; /** * 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.

Default: 1 *

Constraints: Must be a value from 0 to 35. */ private Integer automatedSnapshotRetentionPeriod; /** * The port number on which the cluster accepts incoming connections. *

The cluster is accessible only via the JDBC and ODBC connection * strings. Part of the connection string requires the port on which the * cluster will listen for incoming connections.

Default: * 5439

Valid Values: 1150-65535 */ private Integer port; /** * The version of the Amazon Redshift engine software that you want to * deploy on the cluster.

The version selected runs on all the nodes * in the cluster.

Constraints: Only version 1.0 is currently * available.

Example: 1.0 */ private String clusterVersion; /** * If true, upgrades can be applied during the maintenance * window to the Amazon Redshift engine that is running on the cluster. *

When a new version of the Amazon Redshift engine is released, you * can request that the service automatically apply upgrades during the * maintenance window to the Amazon Redshift engine that is running on * your cluster.

Default: true */ private Boolean allowVersionUpgrade; /** * The number of compute nodes in the cluster. This parameter is required * when the ClusterType parameter is specified as * multi-node.

For information about determining how many * nodes you need, go to * Working with Clusters in the Amazon Redshift Management * Guide.

If you don't specify this parameter, you get a * single-node cluster. When requesting a multi-node cluster, you must * specify the number of nodes that you want in the cluster.

Default: * 1

Constraints: Value must be at least 1 and no more * than 100. */ private Integer numberOfNodes; /** * If true, the cluster can be accessed from a public * network. */ private Boolean publiclyAccessible; /** * If true, the data in cluster is encrypted at rest. *

Default: false */ private Boolean encrypted; /** * 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.

Constraints: The * cluster must be provisioned in EC2-VPC and publicly-accessible through * an Internet gateway. For more information about provisioning clusters * in EC2-VPC, go to Supported * Platforms to Launch Your Cluster in the Amazon Redshift Management * Guide. */ private String elasticIp; /** * The name of the first database to be created when the cluster is * created.

To create additional databases after the cluster is * created, connect to the cluster with a SQL client and use SQL commands * to create a database. For more information, go to Create * a Database in the Amazon Redshift Database Developer Guide. *

Default: dev

Constraints:

  • Must contain 1 * to 64 alphanumeric characters.
  • Must contain only lowercase * letters.
  • Cannot be a word that is reserved by the service. A * list of reserved words can be found in Reserved * Words in the Amazon Redshift Database Developer Guide.
* * @return The name of the first database to be created when the cluster is * created.

To create additional databases after the cluster is * created, connect to the cluster with a SQL client and use SQL commands * to create a database. For more information, go to Create * a Database in the Amazon Redshift Database Developer Guide. *

Default: dev

Constraints:

  • Must contain 1 * to 64 alphanumeric characters.
  • Must contain only lowercase * letters.
  • Cannot be a word that is reserved by the service. A * list of reserved words can be found in Reserved * Words in the Amazon Redshift Database Developer Guide.
*/ public String getDBName() { return dBName; } /** * The name of the first database to be created when the cluster is * created.

To create additional databases after the cluster is * created, connect to the cluster with a SQL client and use SQL commands * to create a database. For more information, go to Create * a Database in the Amazon Redshift Database Developer Guide. *

Default: dev

Constraints:

  • Must contain 1 * to 64 alphanumeric characters.
  • Must contain only lowercase * letters.
  • Cannot be a word that is reserved by the service. A * list of reserved words can be found in Reserved * Words in the Amazon Redshift Database Developer Guide.
* * @param dBName The name of the first database to be created when the cluster is * created.

To create additional databases after the cluster is * created, connect to the cluster with a SQL client and use SQL commands * to create a database. For more information, go to Create * a Database in the Amazon Redshift Database Developer Guide. *

Default: dev

Constraints:

  • Must contain 1 * to 64 alphanumeric characters.
  • Must contain only lowercase * letters.
  • Cannot be a word that is reserved by the service. A * list of reserved words can be found in Reserved * Words in the Amazon Redshift Database Developer Guide.
*/ public void setDBName(String dBName) { this.dBName = dBName; } /** * The name of the first database to be created when the cluster is * created.

To create additional databases after the cluster is * created, connect to the cluster with a SQL client and use SQL commands * to create a database. For more information, go to Create * a Database in the Amazon Redshift Database Developer Guide. *

Default: dev

Constraints:

  • Must contain 1 * to 64 alphanumeric characters.
  • Must contain only lowercase * letters.
  • Cannot be a word that is reserved by the service. A * list of reserved words can be found in Reserved * Words in the Amazon Redshift Database Developer Guide.
*

* Returns a reference to this object so that method calls can be chained together. * * @param dBName The name of the first database to be created when the cluster is * created.

To create additional databases after the cluster is * created, connect to the cluster with a SQL client and use SQL commands * to create a database. For more information, go to Create * a Database in the Amazon Redshift Database Developer Guide. *

Default: dev

Constraints:

  • Must contain 1 * to 64 alphanumeric characters.
  • Must contain only lowercase * letters.
  • Cannot be a word that is reserved by the service. A * list of reserved words can be found in Reserved * Words in the Amazon Redshift Database Developer Guide.
* * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withDBName(String dBName) { this.dBName = dBName; return this; } /** * A unique identifier for the cluster. You use this identifier to refer * to the cluster for any subsequent cluster operations such as deleting * or modifying. The identifier also appears in the Amazon Redshift * console.

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 AWS account.
*

Example: myexamplecluster * * @return A unique identifier for the cluster. You use this identifier to refer * to the cluster for any subsequent cluster operations such as deleting * or modifying. The identifier also appears in the Amazon Redshift * console.

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 AWS account.
*

Example: myexamplecluster */ public String getClusterIdentifier() { return clusterIdentifier; } /** * A unique identifier for the cluster. You use this identifier to refer * to the cluster for any subsequent cluster operations such as deleting * or modifying. The identifier also appears in the Amazon Redshift * console.

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 AWS account.
*

Example: myexamplecluster * * @param clusterIdentifier A unique identifier for the cluster. You use this identifier to refer * to the cluster for any subsequent cluster operations such as deleting * or modifying. The identifier also appears in the Amazon Redshift * console.

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 AWS account.
*

Example: myexamplecluster */ public void setClusterIdentifier(String clusterIdentifier) { this.clusterIdentifier = clusterIdentifier; } /** * A unique identifier for the cluster. You use this identifier to refer * to the cluster for any subsequent cluster operations such as deleting * or modifying. The identifier also appears in the Amazon Redshift * console.

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 AWS account.
*

Example: myexamplecluster *

* Returns a reference to this object so that method calls can be chained together. * * @param clusterIdentifier A unique identifier for the cluster. You use this identifier to refer * to the cluster for any subsequent cluster operations such as deleting * or modifying. The identifier also appears in the Amazon Redshift * console.

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 AWS account.
*

Example: myexamplecluster * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withClusterIdentifier(String clusterIdentifier) { this.clusterIdentifier = clusterIdentifier; return this; } /** * The type of the cluster. When cluster type is specified as

    *
  • single-node, the NumberOfNodes parameter is * not required.
  • multi-node, the * NumberOfNodes parameter is required.

Valid * Values: multi-node | single-node

Default: * multi-node * * @return The type of the cluster. When cluster type is specified as

    *
  • single-node, the NumberOfNodes parameter is * not required.
  • multi-node, the * NumberOfNodes parameter is required.

Valid * Values: multi-node | single-node

Default: * multi-node */ public String getClusterType() { return clusterType; } /** * The type of the cluster. When cluster type is specified as

    *
  • single-node, the NumberOfNodes parameter is * not required.
  • multi-node, the * NumberOfNodes parameter is required.

Valid * Values: multi-node | single-node

Default: * multi-node * * @param clusterType The type of the cluster. When cluster type is specified as

    *
  • single-node, the NumberOfNodes parameter is * not required.
  • multi-node, the * NumberOfNodes parameter is required.

Valid * Values: multi-node | single-node

Default: * multi-node */ public void setClusterType(String clusterType) { this.clusterType = clusterType; } /** * The type of the cluster. When cluster type is specified as

    *
  • single-node, the NumberOfNodes parameter is * not required.
  • multi-node, the * NumberOfNodes parameter is required.

Valid * Values: multi-node | single-node

Default: * multi-node *

* Returns a reference to this object so that method calls can be chained together. * * @param clusterType The type of the cluster. When cluster type is specified as

    *
  • single-node, the NumberOfNodes parameter is * not required.
  • multi-node, the * NumberOfNodes parameter is required.

Valid * Values: multi-node | single-node

Default: * multi-node * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withClusterType(String clusterType) { this.clusterType = clusterType; return this; } /** * The node type to be provisioned for the cluster. For information about * node types, go to * Working with Clusters in the Amazon Redshift Management * Guide.

Valid Values: dw1.xlarge | * dw1.8xlarge | dw2.large | * dw2.8xlarge. * * @return The node type to be provisioned for the cluster. For information about * node types, go to * Working with Clusters in the Amazon Redshift Management * Guide.

Valid Values: dw1.xlarge | * dw1.8xlarge | dw2.large | * dw2.8xlarge. */ public String getNodeType() { return nodeType; } /** * The node type to be provisioned for the cluster. For information about * node types, go to * Working with Clusters in the Amazon Redshift Management * Guide.

Valid Values: dw1.xlarge | * dw1.8xlarge | dw2.large | * dw2.8xlarge. * * @param nodeType The node type to be provisioned for the cluster. For information about * node types, go to * Working with Clusters in the Amazon Redshift Management * Guide.

Valid Values: dw1.xlarge | * dw1.8xlarge | dw2.large | * dw2.8xlarge. */ public void setNodeType(String nodeType) { this.nodeType = nodeType; } /** * The node type to be provisioned for the cluster. For information about * node types, go to * Working with Clusters in the Amazon Redshift Management * Guide.

Valid Values: dw1.xlarge | * dw1.8xlarge | dw2.large | * dw2.8xlarge. *

* Returns a reference to this object so that method calls can be chained together. * * @param nodeType The node type to be provisioned for the cluster. For information about * node types, go to * Working with Clusters in the Amazon Redshift Management * Guide.

Valid Values: dw1.xlarge | * dw1.8xlarge | dw2.large | * dw2.8xlarge. * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withNodeType(String nodeType) { this.nodeType = nodeType; return this; } /** * The user name associated with the master user account for the cluster * that is being created.

Constraints:

  • Must be 1 - 128 * alphanumeric characters.
  • First character must be a * letter.
  • Cannot be a reserved word. A list of reserved words * can be found in Reserved * Words in the Amazon Redshift Database Developer Guide.
* * @return The user name associated with the master user account for the cluster * that is being created.

Constraints:

  • Must be 1 - 128 * alphanumeric characters.
  • First character must be a * letter.
  • Cannot be a reserved word. A list of reserved words * can be found in Reserved * Words in the Amazon Redshift Database Developer Guide.
*/ public String getMasterUsername() { return masterUsername; } /** * The user name associated with the master user account for the cluster * that is being created.

Constraints:

  • Must be 1 - 128 * alphanumeric characters.
  • First character must be a * letter.
  • Cannot be a reserved word. A list of reserved words * can be found in Reserved * Words in the Amazon Redshift Database Developer Guide.
* * @param masterUsername The user name associated with the master user account for the cluster * that is being created.

Constraints:

  • Must be 1 - 128 * alphanumeric characters.
  • First character must be a * letter.
  • Cannot be a reserved word. A list of reserved words * can be found in Reserved * Words in the Amazon Redshift Database Developer Guide.
*/ public void setMasterUsername(String masterUsername) { this.masterUsername = masterUsername; } /** * The user name associated with the master user account for the cluster * that is being created.

Constraints:

  • Must be 1 - 128 * alphanumeric characters.
  • First character must be a * letter.
  • Cannot be a reserved word. A list of reserved words * can be found in Reserved * Words in the Amazon Redshift Database Developer Guide.
*

* Returns a reference to this object so that method calls can be chained together. * * @param masterUsername The user name associated with the master user account for the cluster * that is being created.

Constraints:

  • Must be 1 - 128 * alphanumeric characters.
  • First character must be a * letter.
  • Cannot be a reserved word. A list of reserved words * can be found in Reserved * Words in the Amazon Redshift Database Developer Guide.
* * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withMasterUsername(String masterUsername) { this.masterUsername = masterUsername; return this; } /** * The password associated with the master user account for the cluster * that is being created.

Constraints:

  • Must be between 8 and * 64 characters in length.
  • Must contain at least one uppercase * letter.
  • Must contain at least one lowercase letter.
  • *
  • Must contain one number.
  • Can be any printable ASCII * character (ASCII code 33 to 126) except ' (single quote), " (double * quote), \, /, @, or space.
* * @return The password associated with the master user account for the cluster * that is being created.

Constraints:

  • Must be between 8 and * 64 characters in length.
  • Must contain at least one uppercase * letter.
  • Must contain at least one lowercase letter.
  • *
  • Must contain one number.
  • Can be any printable ASCII * character (ASCII code 33 to 126) except ' (single quote), " (double * quote), \, /, @, or space.
*/ public String getMasterUserPassword() { return masterUserPassword; } /** * The password associated with the master user account for the cluster * that is being created.

Constraints:

  • Must be between 8 and * 64 characters in length.
  • Must contain at least one uppercase * letter.
  • Must contain at least one lowercase letter.
  • *
  • Must contain one number.
  • Can be any printable ASCII * character (ASCII code 33 to 126) except ' (single quote), " (double * quote), \, /, @, or space.
* * @param masterUserPassword The password associated with the master user account for the cluster * that is being created.

Constraints:

  • Must be between 8 and * 64 characters in length.
  • Must contain at least one uppercase * letter.
  • Must contain at least one lowercase letter.
  • *
  • Must contain one number.
  • Can be any printable ASCII * character (ASCII code 33 to 126) except ' (single quote), " (double * quote), \, /, @, or space.
*/ public void setMasterUserPassword(String masterUserPassword) { this.masterUserPassword = masterUserPassword; } /** * The password associated with the master user account for the cluster * that is being created.

Constraints:

  • Must be between 8 and * 64 characters in length.
  • Must contain at least one uppercase * letter.
  • Must contain at least one lowercase letter.
  • *
  • Must contain one number.
  • Can be any printable ASCII * character (ASCII code 33 to 126) except ' (single quote), " (double * quote), \, /, @, or space.
*

* Returns a reference to this object so that method calls can be chained together. * * @param masterUserPassword The password associated with the master user account for the cluster * that is being created.

Constraints:

  • Must be between 8 and * 64 characters in length.
  • Must contain at least one uppercase * letter.
  • Must contain at least one lowercase letter.
  • *
  • Must contain one number.
  • Can be any printable ASCII * character (ASCII code 33 to 126) except ' (single quote), " (double * quote), \, /, @, or space.
* * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withMasterUserPassword(String masterUserPassword) { this.masterUserPassword = masterUserPassword; return this; } /** * A list of security groups to be associated with this cluster.

* Default: The default cluster security group for Amazon Redshift. * * @return A list of security groups to be associated with this cluster.

* Default: The default cluster security group for Amazon Redshift. */ public java.util.List getClusterSecurityGroups() { if (clusterSecurityGroups == null) { clusterSecurityGroups = new com.amazonaws.internal.ListWithAutoConstructFlag(); clusterSecurityGroups.setAutoConstruct(true); } return clusterSecurityGroups; } /** * A list of security groups to be associated with this cluster.

* Default: The default cluster security group for Amazon Redshift. * * @param clusterSecurityGroups A list of security groups to be associated with this cluster.

* Default: The default cluster security group for Amazon Redshift. */ public void setClusterSecurityGroups(java.util.Collection clusterSecurityGroups) { if (clusterSecurityGroups == null) { this.clusterSecurityGroups = null; return; } com.amazonaws.internal.ListWithAutoConstructFlag clusterSecurityGroupsCopy = new com.amazonaws.internal.ListWithAutoConstructFlag(clusterSecurityGroups.size()); clusterSecurityGroupsCopy.addAll(clusterSecurityGroups); this.clusterSecurityGroups = clusterSecurityGroupsCopy; } /** * A list of security groups to be associated with this cluster.

* Default: The default cluster security group for Amazon Redshift. *

* Returns a reference to this object so that method calls can be chained together. * * @param clusterSecurityGroups A list of security groups to be associated with this cluster.

* Default: The default cluster security group for Amazon Redshift. * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withClusterSecurityGroups(String... clusterSecurityGroups) { if (getClusterSecurityGroups() == null) setClusterSecurityGroups(new java.util.ArrayList(clusterSecurityGroups.length)); for (String value : clusterSecurityGroups) { getClusterSecurityGroups().add(value); } return this; } /** * A list of security groups to be associated with this cluster.

* Default: The default cluster security group for Amazon Redshift. *

* Returns a reference to this object so that method calls can be chained together. * * @param clusterSecurityGroups A list of security groups to be associated with this cluster.

* Default: The default cluster security group for Amazon Redshift. * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withClusterSecurityGroups(java.util.Collection clusterSecurityGroups) { if (clusterSecurityGroups == null) { this.clusterSecurityGroups = null; } else { com.amazonaws.internal.ListWithAutoConstructFlag clusterSecurityGroupsCopy = new com.amazonaws.internal.ListWithAutoConstructFlag(clusterSecurityGroups.size()); clusterSecurityGroupsCopy.addAll(clusterSecurityGroups); this.clusterSecurityGroups = clusterSecurityGroupsCopy; } return this; } /** * 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. * * @return 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. */ public java.util.List getVpcSecurityGroupIds() { if (vpcSecurityGroupIds == null) { vpcSecurityGroupIds = new com.amazonaws.internal.ListWithAutoConstructFlag(); vpcSecurityGroupIds.setAutoConstruct(true); } return vpcSecurityGroupIds; } /** * 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. * * @param vpcSecurityGroupIds 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. */ public void setVpcSecurityGroupIds(java.util.Collection vpcSecurityGroupIds) { if (vpcSecurityGroupIds == null) { this.vpcSecurityGroupIds = null; return; } com.amazonaws.internal.ListWithAutoConstructFlag vpcSecurityGroupIdsCopy = new com.amazonaws.internal.ListWithAutoConstructFlag(vpcSecurityGroupIds.size()); vpcSecurityGroupIdsCopy.addAll(vpcSecurityGroupIds); this.vpcSecurityGroupIds = vpcSecurityGroupIdsCopy; } /** * 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. *

* Returns a reference to this object so that method calls can be chained together. * * @param vpcSecurityGroupIds 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. * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withVpcSecurityGroupIds(String... vpcSecurityGroupIds) { if (getVpcSecurityGroupIds() == null) setVpcSecurityGroupIds(new java.util.ArrayList(vpcSecurityGroupIds.length)); for (String value : vpcSecurityGroupIds) { getVpcSecurityGroupIds().add(value); } return this; } /** * 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. *

* Returns a reference to this object so that method calls can be chained together. * * @param vpcSecurityGroupIds 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. * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withVpcSecurityGroupIds(java.util.Collection vpcSecurityGroupIds) { if (vpcSecurityGroupIds == null) { this.vpcSecurityGroupIds = null; } else { com.amazonaws.internal.ListWithAutoConstructFlag vpcSecurityGroupIdsCopy = new com.amazonaws.internal.ListWithAutoConstructFlag(vpcSecurityGroupIds.size()); vpcSecurityGroupIdsCopy.addAll(vpcSecurityGroupIds); this.vpcSecurityGroupIds = vpcSecurityGroupIdsCopy; } return this; } /** * The name of a cluster subnet group to be associated with this cluster. *

If this parameter is not provided the resulting cluster will be * deployed outside virtual private cloud (VPC). * * @return The name of a cluster subnet group to be associated with this cluster. *

If this parameter is not provided the resulting cluster will be * deployed outside virtual private cloud (VPC). */ public String getClusterSubnetGroupName() { return clusterSubnetGroupName; } /** * The name of a cluster subnet group to be associated with this cluster. *

If this parameter is not provided the resulting cluster will be * deployed outside virtual private cloud (VPC). * * @param clusterSubnetGroupName The name of a cluster subnet group to be associated with this cluster. *

If this parameter is not provided the resulting cluster will be * deployed outside virtual private cloud (VPC). */ public void setClusterSubnetGroupName(String clusterSubnetGroupName) { this.clusterSubnetGroupName = clusterSubnetGroupName; } /** * The name of a cluster subnet group to be associated with this cluster. *

If this parameter is not provided the resulting cluster will be * deployed outside virtual private cloud (VPC). *

* Returns a reference to this object so that method calls can be chained together. * * @param clusterSubnetGroupName The name of a cluster subnet group to be associated with this cluster. *

If this parameter is not provided the resulting cluster will be * deployed outside virtual private cloud (VPC). * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withClusterSubnetGroupName(String clusterSubnetGroupName) { this.clusterSubnetGroupName = clusterSubnetGroupName; return this; } /** * The EC2 Availability Zone (AZ) in which you want Amazon Redshift to * provision the cluster. For example, if you have several EC2 instances * running in a specific Availability Zone, then you might want the * cluster to be provisioned in the same zone in order to decrease * network latency.

Default: A random, system-chosen Availability * Zone in the region that is specified by the endpoint.

Example: * us-east-1d

Constraint: The specified Availability * Zone must be in the same region as the current endpoint. * * @return The EC2 Availability Zone (AZ) in which you want Amazon Redshift to * provision the cluster. For example, if you have several EC2 instances * running in a specific Availability Zone, then you might want the * cluster to be provisioned in the same zone in order to decrease * network latency.

Default: A random, system-chosen Availability * Zone in the region that is specified by the endpoint.

Example: * us-east-1d

Constraint: The specified Availability * Zone must be in the same region as the current endpoint. */ public String getAvailabilityZone() { return availabilityZone; } /** * The EC2 Availability Zone (AZ) in which you want Amazon Redshift to * provision the cluster. For example, if you have several EC2 instances * running in a specific Availability Zone, then you might want the * cluster to be provisioned in the same zone in order to decrease * network latency.

Default: A random, system-chosen Availability * Zone in the region that is specified by the endpoint.

Example: * us-east-1d

Constraint: The specified Availability * Zone must be in the same region as the current endpoint. * * @param availabilityZone The EC2 Availability Zone (AZ) in which you want Amazon Redshift to * provision the cluster. For example, if you have several EC2 instances * running in a specific Availability Zone, then you might want the * cluster to be provisioned in the same zone in order to decrease * network latency.

Default: A random, system-chosen Availability * Zone in the region that is specified by the endpoint.

Example: * us-east-1d

Constraint: The specified Availability * Zone must be in the same region as the current endpoint. */ public void setAvailabilityZone(String availabilityZone) { this.availabilityZone = availabilityZone; } /** * The EC2 Availability Zone (AZ) in which you want Amazon Redshift to * provision the cluster. For example, if you have several EC2 instances * running in a specific Availability Zone, then you might want the * cluster to be provisioned in the same zone in order to decrease * network latency.

Default: A random, system-chosen Availability * Zone in the region that is specified by the endpoint.

Example: * us-east-1d

Constraint: The specified Availability * Zone must be in the same region as the current endpoint. *

* Returns a reference to this object so that method calls can be chained together. * * @param availabilityZone The EC2 Availability Zone (AZ) in which you want Amazon Redshift to * provision the cluster. For example, if you have several EC2 instances * running in a specific Availability Zone, then you might want the * cluster to be provisioned in the same zone in order to decrease * network latency.

Default: A random, system-chosen Availability * Zone in the region that is specified by the endpoint.

Example: * us-east-1d

Constraint: The specified Availability * Zone must be in the same region as the current endpoint. * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withAvailabilityZone(String availabilityZone) { this.availabilityZone = availabilityZone; return this; } /** * The weekly time range (in UTC) during which automated cluster * maintenance can occur.

Format: * ddd:hh24:mi-ddd:hh24:mi

Default: A 30-minute window * selected at random from an 8-hour block of time per region, occurring * on a random day of the week. The following list shows the time blocks * for each region from which the default maintenance windows are * assigned.

  • US-East (Northern Virginia) Region: * 03:00-11:00 UTC
  • US-West (Oregon) Region 06:00-14:00 * UTC
  • EU (Ireland) Region 22:00-06:00 UTC
  • *
  • Asia Pacific (Singapore) Region 14:00-22:00 UTC
  • *
  • Asia Pacific (Sydney) Region 12:00-20:00 UTC
  • *
  • Asia Pacific (Tokyo) Region 17:00-03:00 UTC
*

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: A 30-minute window * selected at random from an 8-hour block of time per region, occurring * on a random day of the week. The following list shows the time blocks * for each region from which the default maintenance windows are * assigned.

  • US-East (Northern Virginia) Region: * 03:00-11:00 UTC
  • US-West (Oregon) Region 06:00-14:00 * UTC
  • EU (Ireland) Region 22:00-06:00 UTC
  • *
  • Asia Pacific (Singapore) Region 14:00-22:00 UTC
  • *
  • Asia Pacific (Sydney) Region 12:00-20:00 UTC
  • *
  • Asia Pacific (Tokyo) Region 17:00-03:00 UTC
*

Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

Constraints: * Minimum 30-minute window. */ public String getPreferredMaintenanceWindow() { return preferredMaintenanceWindow; } /** * The weekly time range (in UTC) during which automated cluster * maintenance can occur.

Format: * ddd:hh24:mi-ddd:hh24:mi

Default: A 30-minute window * selected at random from an 8-hour block of time per region, occurring * on a random day of the week. The following list shows the time blocks * for each region from which the default maintenance windows are * assigned.

  • US-East (Northern Virginia) Region: * 03:00-11:00 UTC
  • US-West (Oregon) Region 06:00-14:00 * UTC
  • EU (Ireland) Region 22:00-06:00 UTC
  • *
  • Asia Pacific (Singapore) Region 14:00-22:00 UTC
  • *
  • Asia Pacific (Sydney) Region 12:00-20:00 UTC
  • *
  • Asia Pacific (Tokyo) Region 17:00-03:00 UTC
*

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: A 30-minute window * selected at random from an 8-hour block of time per region, occurring * on a random day of the week. The following list shows the time blocks * for each region from which the default maintenance windows are * assigned.

  • US-East (Northern Virginia) Region: * 03:00-11:00 UTC
  • US-West (Oregon) Region 06:00-14:00 * UTC
  • EU (Ireland) Region 22:00-06:00 UTC
  • *
  • Asia Pacific (Singapore) Region 14:00-22:00 UTC
  • *
  • Asia Pacific (Sydney) Region 12:00-20:00 UTC
  • *
  • Asia Pacific (Tokyo) Region 17:00-03:00 UTC
*

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: A 30-minute window * selected at random from an 8-hour block of time per region, occurring * on a random day of the week. The following list shows the time blocks * for each region from which the default maintenance windows are * assigned.

  • US-East (Northern Virginia) Region: * 03:00-11:00 UTC
  • US-West (Oregon) Region 06:00-14:00 * UTC
  • EU (Ireland) Region 22:00-06:00 UTC
  • *
  • Asia Pacific (Singapore) Region 14:00-22:00 UTC
  • *
  • Asia Pacific (Sydney) Region 12:00-20:00 UTC
  • *
  • Asia Pacific (Tokyo) Region 17:00-03:00 UTC
*

Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

Constraints: * Minimum 30-minute window. *

* Returns a reference to this object so that method calls can be chained together. * * @param preferredMaintenanceWindow The weekly time range (in UTC) during which automated cluster * maintenance can occur.

Format: * ddd:hh24:mi-ddd:hh24:mi

Default: A 30-minute window * selected at random from an 8-hour block of time per region, occurring * on a random day of the week. The following list shows the time blocks * for each region from which the default maintenance windows are * assigned.

  • US-East (Northern Virginia) Region: * 03:00-11:00 UTC
  • US-West (Oregon) Region 06:00-14:00 * UTC
  • EU (Ireland) Region 22:00-06:00 UTC
  • *
  • Asia Pacific (Singapore) Region 14:00-22:00 UTC
  • *
  • Asia Pacific (Sydney) Region 12:00-20:00 UTC
  • *
  • Asia Pacific (Tokyo) Region 17:00-03:00 UTC
*

Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun

Constraints: * Minimum 30-minute window. * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withPreferredMaintenanceWindow(String preferredMaintenanceWindow) { this.preferredMaintenanceWindow = preferredMaintenanceWindow; 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.
* * @return 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.
*/ public String getClusterParameterGroupName() { return clusterParameterGroupName; } /** * 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.
* * @param clusterParameterGroupName 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.
*/ public void setClusterParameterGroupName(String clusterParameterGroupName) { this.clusterParameterGroupName = clusterParameterGroupName; } /** * 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.
*

* Returns a reference to this object so that method calls can be chained together. * * @param clusterParameterGroupName 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.
* * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withClusterParameterGroupName(String clusterParameterGroupName) { this.clusterParameterGroupName = clusterParameterGroupName; 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.

Default: 1 *

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.

Default: 1 *

Constraints: Must be a value from 0 to 35. */ public Integer getAutomatedSnapshotRetentionPeriod() { return 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.

Default: 1 *

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.

Default: 1 *

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.

Default: 1 *

Constraints: Must be a value from 0 to 35. *

* Returns a reference to this object so that method calls can be chained together. * * @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.

Default: 1 *

Constraints: Must be a value from 0 to 35. * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withAutomatedSnapshotRetentionPeriod(Integer automatedSnapshotRetentionPeriod) { this.automatedSnapshotRetentionPeriod = automatedSnapshotRetentionPeriod; return this; } /** * The port number on which the cluster accepts incoming connections. *

The cluster is accessible only via the JDBC and ODBC connection * strings. Part of the connection string requires the port on which the * cluster will listen for incoming connections.

Default: * 5439

Valid Values: 1150-65535 * * @return The port number on which the cluster accepts incoming connections. *

The cluster is accessible only via the JDBC and ODBC connection * strings. Part of the connection string requires the port on which the * cluster will listen for incoming connections.

Default: * 5439

Valid Values: 1150-65535 */ public Integer getPort() { return port; } /** * The port number on which the cluster accepts incoming connections. *

The cluster is accessible only via the JDBC and ODBC connection * strings. Part of the connection string requires the port on which the * cluster will listen for incoming connections.

Default: * 5439

Valid Values: 1150-65535 * * @param port The port number on which the cluster accepts incoming connections. *

The cluster is accessible only via the JDBC and ODBC connection * strings. Part of the connection string requires the port on which the * cluster will listen for incoming connections.

Default: * 5439

Valid Values: 1150-65535 */ public void setPort(Integer port) { this.port = port; } /** * The port number on which the cluster accepts incoming connections. *

The cluster is accessible only via the JDBC and ODBC connection * strings. Part of the connection string requires the port on which the * cluster will listen for incoming connections.

Default: * 5439

Valid Values: 1150-65535 *

* Returns a reference to this object so that method calls can be chained together. * * @param port The port number on which the cluster accepts incoming connections. *

The cluster is accessible only via the JDBC and ODBC connection * strings. Part of the connection string requires the port on which the * cluster will listen for incoming connections.

Default: * 5439

Valid Values: 1150-65535 * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withPort(Integer port) { this.port = port; return this; } /** * The version of the Amazon Redshift engine software that you want to * deploy on the cluster.

The version selected runs on all the nodes * in the cluster.

Constraints: Only version 1.0 is currently * available.

Example: 1.0 * * @return The version of the Amazon Redshift engine software that you want to * deploy on the cluster.

The version selected runs on all the nodes * in the cluster.

Constraints: Only version 1.0 is currently * available.

Example: 1.0 */ public String getClusterVersion() { return clusterVersion; } /** * The version of the Amazon Redshift engine software that you want to * deploy on the cluster.

The version selected runs on all the nodes * in the cluster.

Constraints: Only version 1.0 is currently * available.

Example: 1.0 * * @param clusterVersion The version of the Amazon Redshift engine software that you want to * deploy on the cluster.

The version selected runs on all the nodes * in the cluster.

Constraints: Only version 1.0 is currently * available.

Example: 1.0 */ public void setClusterVersion(String clusterVersion) { this.clusterVersion = clusterVersion; } /** * The version of the Amazon Redshift engine software that you want to * deploy on the cluster.

The version selected runs on all the nodes * in the cluster.

Constraints: Only version 1.0 is currently * available.

Example: 1.0 *

* Returns a reference to this object so that method calls can be chained together. * * @param clusterVersion The version of the Amazon Redshift engine software that you want to * deploy on the cluster.

The version selected runs on all the nodes * in the cluster.

Constraints: Only version 1.0 is currently * available.

Example: 1.0 * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withClusterVersion(String clusterVersion) { this.clusterVersion = clusterVersion; return this; } /** * If true, upgrades can be applied during the maintenance * window to the Amazon Redshift engine that is running on the cluster. *

When a new version of the Amazon Redshift engine is released, you * can request that the service automatically apply upgrades during the * maintenance window to the Amazon Redshift engine that is running on * your cluster.

Default: true * * @return If true, upgrades can be applied during the maintenance * window to the Amazon Redshift engine that is running on the cluster. *

When a new version of the Amazon Redshift engine is released, you * can request that the service automatically apply upgrades during the * maintenance window to the Amazon Redshift engine that is running on * your cluster.

Default: true */ public Boolean isAllowVersionUpgrade() { return allowVersionUpgrade; } /** * If true, upgrades can be applied during the maintenance * window to the Amazon Redshift engine that is running on the cluster. *

When a new version of the Amazon Redshift engine is released, you * can request that the service automatically apply upgrades during the * maintenance window to the Amazon Redshift engine that is running on * your cluster.

Default: true * * @param allowVersionUpgrade If true, upgrades can be applied during the maintenance * window to the Amazon Redshift engine that is running on the cluster. *

When a new version of the Amazon Redshift engine is released, you * can request that the service automatically apply upgrades during the * maintenance window to the Amazon Redshift engine that is running on * your cluster.

Default: true */ public void setAllowVersionUpgrade(Boolean allowVersionUpgrade) { this.allowVersionUpgrade = allowVersionUpgrade; } /** * If true, upgrades can be applied during the maintenance * window to the Amazon Redshift engine that is running on the cluster. *

When a new version of the Amazon Redshift engine is released, you * can request that the service automatically apply upgrades during the * maintenance window to the Amazon Redshift engine that is running on * your cluster.

Default: true *

* Returns a reference to this object so that method calls can be chained together. * * @param allowVersionUpgrade If true, upgrades can be applied during the maintenance * window to the Amazon Redshift engine that is running on the cluster. *

When a new version of the Amazon Redshift engine is released, you * can request that the service automatically apply upgrades during the * maintenance window to the Amazon Redshift engine that is running on * your cluster.

Default: true * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withAllowVersionUpgrade(Boolean allowVersionUpgrade) { this.allowVersionUpgrade = allowVersionUpgrade; return this; } /** * If true, upgrades can be applied during the maintenance * window to the Amazon Redshift engine that is running on the cluster. *

When a new version of the Amazon Redshift engine is released, you * can request that the service automatically apply upgrades during the * maintenance window to the Amazon Redshift engine that is running on * your cluster.

Default: true * * @return If true, upgrades can be applied during the maintenance * window to the Amazon Redshift engine that is running on the cluster. *

When a new version of the Amazon Redshift engine is released, you * can request that the service automatically apply upgrades during the * maintenance window to the Amazon Redshift engine that is running on * your cluster.

Default: true */ public Boolean getAllowVersionUpgrade() { return allowVersionUpgrade; } /** * The number of compute nodes in the cluster. This parameter is required * when the ClusterType parameter is specified as * multi-node.

For information about determining how many * nodes you need, go to * Working with Clusters in the Amazon Redshift Management * Guide.

If you don't specify this parameter, you get a * single-node cluster. When requesting a multi-node cluster, you must * specify the number of nodes that you want in the cluster.

Default: * 1

Constraints: Value must be at least 1 and no more * than 100. * * @return The number of compute nodes in the cluster. This parameter is required * when the ClusterType parameter is specified as * multi-node.

For information about determining how many * nodes you need, go to * Working with Clusters in the Amazon Redshift Management * Guide.

If you don't specify this parameter, you get a * single-node cluster. When requesting a multi-node cluster, you must * specify the number of nodes that you want in the cluster.

Default: * 1

Constraints: Value must be at least 1 and no more * than 100. */ public Integer getNumberOfNodes() { return numberOfNodes; } /** * The number of compute nodes in the cluster. This parameter is required * when the ClusterType parameter is specified as * multi-node.

For information about determining how many * nodes you need, go to * Working with Clusters in the Amazon Redshift Management * Guide.

If you don't specify this parameter, you get a * single-node cluster. When requesting a multi-node cluster, you must * specify the number of nodes that you want in the cluster.

Default: * 1

Constraints: Value must be at least 1 and no more * than 100. * * @param numberOfNodes The number of compute nodes in the cluster. This parameter is required * when the ClusterType parameter is specified as * multi-node.

For information about determining how many * nodes you need, go to * Working with Clusters in the Amazon Redshift Management * Guide.

If you don't specify this parameter, you get a * single-node cluster. When requesting a multi-node cluster, you must * specify the number of nodes that you want in the cluster.

Default: * 1

Constraints: Value must be at least 1 and no more * than 100. */ public void setNumberOfNodes(Integer numberOfNodes) { this.numberOfNodes = numberOfNodes; } /** * The number of compute nodes in the cluster. This parameter is required * when the ClusterType parameter is specified as * multi-node.

For information about determining how many * nodes you need, go to * Working with Clusters in the Amazon Redshift Management * Guide.

If you don't specify this parameter, you get a * single-node cluster. When requesting a multi-node cluster, you must * specify the number of nodes that you want in the cluster.

Default: * 1

Constraints: Value must be at least 1 and no more * than 100. *

* Returns a reference to this object so that method calls can be chained together. * * @param numberOfNodes The number of compute nodes in the cluster. This parameter is required * when the ClusterType parameter is specified as * multi-node.

For information about determining how many * nodes you need, go to * Working with Clusters in the Amazon Redshift Management * Guide.

If you don't specify this parameter, you get a * single-node cluster. When requesting a multi-node cluster, you must * specify the number of nodes that you want in the cluster.

Default: * 1

Constraints: Value must be at least 1 and no more * than 100. * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withNumberOfNodes(Integer numberOfNodes) { this.numberOfNodes = numberOfNodes; return this; } /** * If true, the cluster can be accessed from a public * network. * * @return If true, the cluster can be accessed from a public * network. */ public Boolean isPubliclyAccessible() { return publiclyAccessible; } /** * If true, the cluster can be accessed from a public * network. * * @param publiclyAccessible If 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. *

* Returns a reference to this object so that method calls can be chained together. * * @param publiclyAccessible If true, the cluster can be accessed from a public * network. * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withPubliclyAccessible(Boolean publiclyAccessible) { this.publiclyAccessible = publiclyAccessible; return this; } /** * If true, the cluster can be accessed from a public * network. * * @return If true, the cluster can be accessed from a public * network. */ public Boolean getPubliclyAccessible() { return publiclyAccessible; } /** * If true, the data in cluster is encrypted at rest. *

Default: false * * @return If true, the data in cluster is encrypted at rest. *

Default: false */ public Boolean isEncrypted() { return encrypted; } /** * If true, the data in cluster is encrypted at rest. *

Default: false * * @param encrypted If true, the data in cluster is encrypted at rest. *

Default: false */ public void setEncrypted(Boolean encrypted) { this.encrypted = encrypted; } /** * If true, the data in cluster is encrypted at rest. *

Default: false *

* Returns a reference to this object so that method calls can be chained together. * * @param encrypted If true, the data in cluster is encrypted at rest. *

Default: false * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withEncrypted(Boolean encrypted) { this.encrypted = encrypted; return this; } /** * If true, the data in cluster is encrypted at rest. *

Default: false * * @return If true, the data in cluster is encrypted at rest. *

Default: false */ public Boolean getEncrypted() { return encrypted; } /** * 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 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. */ 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. *

* Returns a reference to this object so that method calls can be chained together. * * @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 A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withHsmClientCertificateIdentifier(String hsmClientCertificateIdentifier) { this.hsmClientCertificateIdentifier = 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. * * @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 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. */ 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. *

* Returns a reference to this object so that method calls can be chained together. * * @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 A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withHsmConfigurationIdentifier(String hsmConfigurationIdentifier) { this.hsmConfigurationIdentifier = hsmConfigurationIdentifier; return this; } /** * The Elastic IP (EIP) address for the cluster.

Constraints: The * cluster must be provisioned in EC2-VPC and publicly-accessible through * an Internet gateway. For more information about provisioning clusters * in EC2-VPC, go to Supported * Platforms to Launch Your Cluster in the Amazon Redshift Management * Guide. * * @return The Elastic IP (EIP) address for the cluster.

Constraints: The * cluster must be provisioned in EC2-VPC and publicly-accessible through * an Internet gateway. For more information about provisioning clusters * in EC2-VPC, go to Supported * Platforms to Launch Your Cluster in the Amazon Redshift Management * Guide. */ public String getElasticIp() { return elasticIp; } /** * The Elastic IP (EIP) address for the cluster.

Constraints: The * cluster must be provisioned in EC2-VPC and publicly-accessible through * an Internet gateway. For more information about provisioning clusters * in EC2-VPC, go to Supported * Platforms to Launch Your Cluster in the Amazon Redshift Management * Guide. * * @param elasticIp The Elastic IP (EIP) address for the cluster.

Constraints: The * cluster must be provisioned in EC2-VPC and publicly-accessible through * an Internet gateway. For more information about provisioning clusters * in EC2-VPC, go to Supported * Platforms to Launch Your Cluster in the Amazon Redshift Management * Guide. */ public void setElasticIp(String elasticIp) { this.elasticIp = elasticIp; } /** * The Elastic IP (EIP) address for the cluster.

Constraints: The * cluster must be provisioned in EC2-VPC and publicly-accessible through * an Internet gateway. For more information about provisioning clusters * in EC2-VPC, go to Supported * Platforms to Launch Your Cluster in the Amazon Redshift Management * Guide. *

* Returns a reference to this object so that method calls can be chained together. * * @param elasticIp The Elastic IP (EIP) address for the cluster.

Constraints: The * cluster must be provisioned in EC2-VPC and publicly-accessible through * an Internet gateway. For more information about provisioning clusters * in EC2-VPC, go to Supported * Platforms to Launch Your Cluster in the Amazon Redshift Management * Guide. * * @return A reference to this updated object so that method calls can be chained * together. */ public CreateClusterRequest withElasticIp(String elasticIp) { this.elasticIp = elasticIp; return this; } /** * Returns a string representation of this object; useful for testing and * debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getDBName() != null) sb.append("DBName: " + getDBName() + ","); if (getClusterIdentifier() != null) sb.append("ClusterIdentifier: " + getClusterIdentifier() + ","); if (getClusterType() != null) sb.append("ClusterType: " + getClusterType() + ","); if (getNodeType() != null) sb.append("NodeType: " + getNodeType() + ","); if (getMasterUsername() != null) sb.append("MasterUsername: " + getMasterUsername() + ","); if (getMasterUserPassword() != null) sb.append("MasterUserPassword: " + getMasterUserPassword() + ","); if (getClusterSecurityGroups() != null) sb.append("ClusterSecurityGroups: " + getClusterSecurityGroups() + ","); if (getVpcSecurityGroupIds() != null) sb.append("VpcSecurityGroupIds: " + getVpcSecurityGroupIds() + ","); if (getClusterSubnetGroupName() != null) sb.append("ClusterSubnetGroupName: " + getClusterSubnetGroupName() + ","); if (getAvailabilityZone() != null) sb.append("AvailabilityZone: " + getAvailabilityZone() + ","); if (getPreferredMaintenanceWindow() != null) sb.append("PreferredMaintenanceWindow: " + getPreferredMaintenanceWindow() + ","); if (getClusterParameterGroupName() != null) sb.append("ClusterParameterGroupName: " + getClusterParameterGroupName() + ","); if (getAutomatedSnapshotRetentionPeriod() != null) sb.append("AutomatedSnapshotRetentionPeriod: " + getAutomatedSnapshotRetentionPeriod() + ","); if (getPort() != null) sb.append("Port: " + getPort() + ","); if (getClusterVersion() != null) sb.append("ClusterVersion: " + getClusterVersion() + ","); if (isAllowVersionUpgrade() != null) sb.append("AllowVersionUpgrade: " + isAllowVersionUpgrade() + ","); if (getNumberOfNodes() != null) sb.append("NumberOfNodes: " + getNumberOfNodes() + ","); if (isPubliclyAccessible() != null) sb.append("PubliclyAccessible: " + isPubliclyAccessible() + ","); if (isEncrypted() != null) sb.append("Encrypted: " + isEncrypted() + ","); if (getHsmClientCertificateIdentifier() != null) sb.append("HsmClientCertificateIdentifier: " + getHsmClientCertificateIdentifier() + ","); if (getHsmConfigurationIdentifier() != null) sb.append("HsmConfigurationIdentifier: " + getHsmConfigurationIdentifier() + ","); if (getElasticIp() != null) sb.append("ElasticIp: " + getElasticIp() ); sb.append("}"); return sb.toString(); } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getDBName() == null) ? 0 : getDBName().hashCode()); hashCode = prime * hashCode + ((getClusterIdentifier() == null) ? 0 : getClusterIdentifier().hashCode()); hashCode = prime * hashCode + ((getClusterType() == null) ? 0 : getClusterType().hashCode()); hashCode = prime * hashCode + ((getNodeType() == null) ? 0 : getNodeType().hashCode()); hashCode = prime * hashCode + ((getMasterUsername() == null) ? 0 : getMasterUsername().hashCode()); hashCode = prime * hashCode + ((getMasterUserPassword() == null) ? 0 : getMasterUserPassword().hashCode()); hashCode = prime * hashCode + ((getClusterSecurityGroups() == null) ? 0 : getClusterSecurityGroups().hashCode()); hashCode = prime * hashCode + ((getVpcSecurityGroupIds() == null) ? 0 : getVpcSecurityGroupIds().hashCode()); hashCode = prime * hashCode + ((getClusterSubnetGroupName() == null) ? 0 : getClusterSubnetGroupName().hashCode()); hashCode = prime * hashCode + ((getAvailabilityZone() == null) ? 0 : getAvailabilityZone().hashCode()); hashCode = prime * hashCode + ((getPreferredMaintenanceWindow() == null) ? 0 : getPreferredMaintenanceWindow().hashCode()); hashCode = prime * hashCode + ((getClusterParameterGroupName() == null) ? 0 : getClusterParameterGroupName().hashCode()); hashCode = prime * hashCode + ((getAutomatedSnapshotRetentionPeriod() == null) ? 0 : getAutomatedSnapshotRetentionPeriod().hashCode()); hashCode = prime * hashCode + ((getPort() == null) ? 0 : getPort().hashCode()); hashCode = prime * hashCode + ((getClusterVersion() == null) ? 0 : getClusterVersion().hashCode()); hashCode = prime * hashCode + ((isAllowVersionUpgrade() == null) ? 0 : isAllowVersionUpgrade().hashCode()); hashCode = prime * hashCode + ((getNumberOfNodes() == null) ? 0 : getNumberOfNodes().hashCode()); hashCode = prime * hashCode + ((isPubliclyAccessible() == null) ? 0 : isPubliclyAccessible().hashCode()); hashCode = prime * hashCode + ((isEncrypted() == null) ? 0 : isEncrypted().hashCode()); hashCode = prime * hashCode + ((getHsmClientCertificateIdentifier() == null) ? 0 : getHsmClientCertificateIdentifier().hashCode()); hashCode = prime * hashCode + ((getHsmConfigurationIdentifier() == null) ? 0 : getHsmConfigurationIdentifier().hashCode()); hashCode = prime * hashCode + ((getElasticIp() == null) ? 0 : getElasticIp().hashCode()); return hashCode; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateClusterRequest == false) return false; CreateClusterRequest other = (CreateClusterRequest)obj; if (other.getDBName() == null ^ this.getDBName() == null) return false; if (other.getDBName() != null && other.getDBName().equals(this.getDBName()) == false) return false; if (other.getClusterIdentifier() == null ^ this.getClusterIdentifier() == null) return false; if (other.getClusterIdentifier() != null && other.getClusterIdentifier().equals(this.getClusterIdentifier()) == false) return false; if (other.getClusterType() == null ^ this.getClusterType() == null) return false; if (other.getClusterType() != null && other.getClusterType().equals(this.getClusterType()) == false) return false; if (other.getNodeType() == null ^ this.getNodeType() == null) return false; if (other.getNodeType() != null && other.getNodeType().equals(this.getNodeType()) == false) return false; if (other.getMasterUsername() == null ^ this.getMasterUsername() == null) return false; if (other.getMasterUsername() != null && other.getMasterUsername().equals(this.getMasterUsername()) == false) return false; if (other.getMasterUserPassword() == null ^ this.getMasterUserPassword() == null) return false; if (other.getMasterUserPassword() != null && other.getMasterUserPassword().equals(this.getMasterUserPassword()) == false) return false; if (other.getClusterSecurityGroups() == null ^ this.getClusterSecurityGroups() == null) return false; if (other.getClusterSecurityGroups() != null && other.getClusterSecurityGroups().equals(this.getClusterSecurityGroups()) == 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.getClusterSubnetGroupName() == null ^ this.getClusterSubnetGroupName() == null) return false; if (other.getClusterSubnetGroupName() != null && other.getClusterSubnetGroupName().equals(this.getClusterSubnetGroupName()) == false) return false; if (other.getAvailabilityZone() == null ^ this.getAvailabilityZone() == null) return false; if (other.getAvailabilityZone() != null && other.getAvailabilityZone().equals(this.getAvailabilityZone()) == false) return false; if (other.getPreferredMaintenanceWindow() == null ^ this.getPreferredMaintenanceWindow() == null) return false; if (other.getPreferredMaintenanceWindow() != null && other.getPreferredMaintenanceWindow().equals(this.getPreferredMaintenanceWindow()) == false) return false; if (other.getClusterParameterGroupName() == null ^ this.getClusterParameterGroupName() == null) return false; if (other.getClusterParameterGroupName() != null && other.getClusterParameterGroupName().equals(this.getClusterParameterGroupName()) == false) return false; if (other.getAutomatedSnapshotRetentionPeriod() == null ^ this.getAutomatedSnapshotRetentionPeriod() == null) return false; if (other.getAutomatedSnapshotRetentionPeriod() != null && other.getAutomatedSnapshotRetentionPeriod().equals(this.getAutomatedSnapshotRetentionPeriod()) == 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.getClusterVersion() == null ^ this.getClusterVersion() == null) return false; if (other.getClusterVersion() != null && other.getClusterVersion().equals(this.getClusterVersion()) == false) return false; if (other.isAllowVersionUpgrade() == null ^ this.isAllowVersionUpgrade() == null) return false; if (other.isAllowVersionUpgrade() != null && other.isAllowVersionUpgrade().equals(this.isAllowVersionUpgrade()) == false) return false; if (other.getNumberOfNodes() == null ^ this.getNumberOfNodes() == null) return false; if (other.getNumberOfNodes() != null && other.getNumberOfNodes().equals(this.getNumberOfNodes()) == false) return false; if (other.isPubliclyAccessible() == null ^ this.isPubliclyAccessible() == null) return false; if (other.isPubliclyAccessible() != null && other.isPubliclyAccessible().equals(this.isPubliclyAccessible()) == false) return false; if (other.isEncrypted() == null ^ this.isEncrypted() == null) return false; if (other.isEncrypted() != null && other.isEncrypted().equals(this.isEncrypted()) == false) return false; if (other.getHsmClientCertificateIdentifier() == null ^ this.getHsmClientCertificateIdentifier() == null) return false; if (other.getHsmClientCertificateIdentifier() != null && other.getHsmClientCertificateIdentifier().equals(this.getHsmClientCertificateIdentifier()) == false) return false; if (other.getHsmConfigurationIdentifier() == null ^ this.getHsmConfigurationIdentifier() == null) return false; if (other.getHsmConfigurationIdentifier() != null && other.getHsmConfigurationIdentifier().equals(this.getHsmConfigurationIdentifier()) == false) return false; if (other.getElasticIp() == null ^ this.getElasticIp() == null) return false; if (other.getElasticIp() != null && other.getElasticIp().equals(this.getElasticIp()) == false) return false; return true; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy