Class CfnClusterMixinProps.Builder

java.lang.Object
software.amazon.awscdk.cfnpropertymixins.services.docdbelastic.CfnClusterMixinProps.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnClusterMixinProps>
Enclosing interface:
CfnClusterMixinProps

@Stability(Stable) public static final class CfnClusterMixinProps.Builder extends Object implements software.amazon.jsii.Builder<CfnClusterMixinProps>
A builder for CfnClusterMixinProps
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • adminUserName

      @Stability(Stable) public CfnClusterMixinProps.Builder adminUserName(String adminUserName)
      Parameters:
      adminUserName - The name of the Amazon DocumentDB elastic clusters administrator. Constraints :

      • Must be from 1 to 63 letters or numbers.
      • The first character must be a letter.
      • Cannot be a reserved word.
      Returns:
      this
    • adminUserPassword

      @Stability(Stable) public CfnClusterMixinProps.Builder adminUserPassword(String adminUserPassword)
      Parameters:
      adminUserPassword - The password for the Elastic DocumentDB cluster administrator and can contain any printable ASCII characters. Constraints :

      • Must contain from 8 to 100 characters.
      • Cannot contain a forward slash (/), double quote ("), or the "at" symbol (@).
      • A valid AdminUserName entry is also required.
      Returns:
      this
    • authType

      @Stability(Stable) public CfnClusterMixinProps.Builder authType(String authType)
      Parameters:
      authType - The authentication type used to determine where to fetch the password used for accessing the elastic cluster. Valid types are PLAIN_TEXT or SECRET_ARN .
      Returns:
      this
    • backupRetentionPeriod

      @Stability(Stable) public CfnClusterMixinProps.Builder backupRetentionPeriod(Number backupRetentionPeriod)
      Parameters:
      backupRetentionPeriod - The number of days for which automatic snapshots are retained.
      Returns:
      this
    • clusterName

      @Stability(Stable) public CfnClusterMixinProps.Builder clusterName(String clusterName)
      Parameters:
      clusterName - The name of the new elastic cluster. This parameter is stored as a lowercase string. Constraints :

      • Must contain from 1 to 63 letters, numbers, or hyphens.
      • The first character must be a letter.
      • Cannot end with a hyphen or contain two consecutive hyphens.

      Example : my-cluster

      Returns:
      this
    • kmsKeyId

      @Stability(Stable) public CfnClusterMixinProps.Builder kmsKeyId(String kmsKeyId)
      Parameters:
      kmsKeyId - The KMS key identifier to use to encrypt the new elastic cluster. The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a cluster using the same Amazon account that owns this KMS encryption key, you can use the KMS key alias instead of the ARN as the KMS encryption key.

      If an encryption key is not specified, Amazon DocumentDB uses the default encryption key that KMS creates for your account. Your account has a different default encryption key for each Amazon Region.

      Returns:
      this
    • kmsKeyId

      @Stability(Stable) public CfnClusterMixinProps.Builder kmsKeyId(IKeyRef kmsKeyId)
      Parameters:
      kmsKeyId - The KMS key identifier to use to encrypt the new elastic cluster. The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a cluster using the same Amazon account that owns this KMS encryption key, you can use the KMS key alias instead of the ARN as the KMS encryption key.

      If an encryption key is not specified, Amazon DocumentDB uses the default encryption key that KMS creates for your account. Your account has a different default encryption key for each Amazon Region.

      Returns:
      this
    • preferredBackupWindow

      @Stability(Stable) public CfnClusterMixinProps.Builder preferredBackupWindow(String preferredBackupWindow)
      Parameters:
      preferredBackupWindow - The daily time range during which automated backups are created if automated backups are enabled, as determined by backupRetentionPeriod .
      Returns:
      this
    • preferredMaintenanceWindow

      @Stability(Stable) public CfnClusterMixinProps.Builder preferredMaintenanceWindow(String preferredMaintenanceWindow)
      Parameters:
      preferredMaintenanceWindow - The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). Format : ddd:hh24:mi-ddd:hh24:mi

      Default : a 30-minute window selected at random from an 8-hour block of time for each AWS Region , occurring on a random day of the week.

      Valid days : Mon, Tue, Wed, Thu, Fri, Sat, Sun

      Constraints : Minimum 30-minute window.

      Returns:
      this
    • shardCapacity

      @Stability(Stable) public CfnClusterMixinProps.Builder shardCapacity(Number shardCapacity)
      Parameters:
      shardCapacity - The number of vCPUs assigned to each elastic cluster shard. Maximum is 64. Allowed values are 2, 4, 8, 16, 32, 64.
      Returns:
      this
    • shardCount

      @Stability(Stable) public CfnClusterMixinProps.Builder shardCount(Number shardCount)
      Parameters:
      shardCount - The number of shards assigned to the elastic cluster. Maximum is 32.
      Returns:
      this
    • shardInstanceCount

      @Stability(Stable) public CfnClusterMixinProps.Builder shardInstanceCount(Number shardInstanceCount)
      Parameters:
      shardInstanceCount - The number of replica instances applying to all shards in the cluster. A shardInstanceCount value of 1 means there is one writer instance, and any additional instances are replicas that can be used for reads and to improve availability.
      Returns:
      this
    • subnetIds

      @Stability(Stable) public CfnClusterMixinProps.Builder subnetIds(List<String> subnetIds)
      Parameters:
      subnetIds - The Amazon EC2 subnet IDs for the new elastic cluster.
      Returns:
      this
    • tags

      @Stability(Stable) public CfnClusterMixinProps.Builder tags(List<? extends CfnTag> tags)
      Parameters:
      tags - The tags to be assigned to the new elastic cluster.
      Returns:
      this
    • vpcSecurityGroupIds

      @Stability(Stable) public CfnClusterMixinProps.Builder vpcSecurityGroupIds(List<? extends Object> vpcSecurityGroupIds)
      Parameters:
      vpcSecurityGroupIds - A list of EC2 VPC security groups to associate with the new elastic cluster.
      Returns:
      this
    • build

      @Stability(Stable) public CfnClusterMixinProps build()
      Builds the configured instance.
      Specified by:
      build in interface software.amazon.jsii.Builder<CfnClusterMixinProps>
      Returns:
      a new instance of CfnClusterMixinProps
      Throws:
      NullPointerException - if any required attribute was not provided