Class CfnDBClusterProps.Builder

java.lang.Object
software.amazon.awscdk.services.neptune.CfnDBClusterProps.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnDBClusterProps>
Enclosing interface:
CfnDBClusterProps

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

    • Builder

      public Builder()
  • Method Details

    • associatedRoles

      @Stability(Stable) public CfnDBClusterProps.Builder associatedRoles(IResolvable associatedRoles)
      Parameters:
      associatedRoles - Provides a list of the Amazon Identity and Access Management (IAM) roles that are associated with the DB cluster. IAM roles that are associated with a DB cluster grant permission for the DB cluster to access other Amazon services on your behalf.
      Returns:
      this
    • associatedRoles

      @Stability(Stable) public CfnDBClusterProps.Builder associatedRoles(List<? extends Object> associatedRoles)
      Parameters:
      associatedRoles - Provides a list of the Amazon Identity and Access Management (IAM) roles that are associated with the DB cluster. IAM roles that are associated with a DB cluster grant permission for the DB cluster to access other Amazon services on your behalf.
      Returns:
      this
    • availabilityZones

      @Stability(Stable) public CfnDBClusterProps.Builder availabilityZones(List<String> availabilityZones)
      Parameters:
      availabilityZones - Provides the list of EC2 Availability Zones that instances in the DB cluster can be created in.
      Returns:
      this
    • backupRetentionPeriod

      @Stability(Stable) public CfnDBClusterProps.Builder backupRetentionPeriod(Number backupRetentionPeriod)
      Parameters:
      backupRetentionPeriod - Specifies the number of days for which automatic DB snapshots are retained. An update may require some interruption. See ModifyDBInstance in the Amazon Neptune User Guide for more information.
      Returns:
      this
    • copyTagsToSnapshot

      @Stability(Stable) public CfnDBClusterProps.Builder copyTagsToSnapshot(Boolean copyTagsToSnapshot)
      Parameters:
      copyTagsToSnapshot - If set to true , tags are copied to any snapshot of the DB cluster that is created..
      Returns:
      this
    • copyTagsToSnapshot

      @Stability(Stable) public CfnDBClusterProps.Builder copyTagsToSnapshot(IResolvable copyTagsToSnapshot)
      Parameters:
      copyTagsToSnapshot - If set to true , tags are copied to any snapshot of the DB cluster that is created..
      Returns:
      this
    • dbClusterIdentifier

      @Stability(Stable) public CfnDBClusterProps.Builder dbClusterIdentifier(String dbClusterIdentifier)
      Parameters:
      dbClusterIdentifier - Contains a user-supplied DB cluster identifier. This identifier is the unique key that identifies a DB cluster.
      Returns:
      this
    • dbClusterParameterGroupName

      @Stability(Stable) public CfnDBClusterProps.Builder dbClusterParameterGroupName(String dbClusterParameterGroupName)
      Parameters:
      dbClusterParameterGroupName - Provides the name of the DB cluster parameter group. An update may require some interruption. See ModifyDBInstance in the Amazon Neptune User Guide for more information.
      Returns:
      this
    • dbInstanceParameterGroupName

      @Stability(Stable) public CfnDBClusterProps.Builder dbInstanceParameterGroupName(String dbInstanceParameterGroupName)
      Parameters:
      dbInstanceParameterGroupName - The name of the DB parameter group to apply to all instances of the DB cluster. Used only in case of a major engine version upgrade request

      Note that when you apply a parameter group using DBInstanceParameterGroupName , parameter changes are applied immediately, not during the next maintenance window.

      Constraints - The DB parameter group must be in the same DB parameter group family as the target DB cluster version.

      • The DBInstanceParameterGroupName parameter is only valid for major engine version upgrades.
      Returns:
      this
    • dbPort

      @Stability(Stable) public CfnDBClusterProps.Builder dbPort(Number dbPort)
      Parameters:
      dbPort - The port number on which the DB instances in the DB cluster accept connections. If not specified, the default port used is 8182 .

      The Port property will soon be deprecated. Please update existing templates to use the new DBPort property that has the same functionality.

      Returns:
      this
    • dbSubnetGroupName

      @Stability(Stable) public CfnDBClusterProps.Builder dbSubnetGroupName(String dbSubnetGroupName)
      Parameters:
      dbSubnetGroupName - Specifies information on the subnet group associated with the DB cluster, including the name, description, and subnets in the subnet group.
      Returns:
      this
    • deletionProtection

      @Stability(Stable) public CfnDBClusterProps.Builder deletionProtection(Boolean deletionProtection)
      Parameters:
      deletionProtection - Indicates whether or not the DB cluster has deletion protection enabled. The database can't be deleted when deletion protection is enabled.
      Returns:
      this
    • deletionProtection

      @Stability(Stable) public CfnDBClusterProps.Builder deletionProtection(IResolvable deletionProtection)
      Parameters:
      deletionProtection - Indicates whether or not the DB cluster has deletion protection enabled. The database can't be deleted when deletion protection is enabled.
      Returns:
      this
    • enableCloudwatchLogsExports

      @Stability(Stable) public CfnDBClusterProps.Builder enableCloudwatchLogsExports(List<String> enableCloudwatchLogsExports)
      Parameters:
      enableCloudwatchLogsExports - Specifies a list of log types that are enabled for export to CloudWatch Logs.
      Returns:
      this
    • engineVersion

      @Stability(Stable) public CfnDBClusterProps.Builder engineVersion(String engineVersion)
      Parameters:
      engineVersion - Indicates the database engine version.
      Returns:
      this
    • iamAuthEnabled

      @Stability(Stable) public CfnDBClusterProps.Builder iamAuthEnabled(Boolean iamAuthEnabled)
      Parameters:
      iamAuthEnabled - True if mapping of Amazon Identity and Access Management (IAM) accounts to database accounts is enabled, and otherwise false.
      Returns:
      this
    • iamAuthEnabled

      @Stability(Stable) public CfnDBClusterProps.Builder iamAuthEnabled(IResolvable iamAuthEnabled)
      Parameters:
      iamAuthEnabled - True if mapping of Amazon Identity and Access Management (IAM) accounts to database accounts is enabled, and otherwise false.
      Returns:
      this
    • kmsKeyId

      @Stability(Stable) public CfnDBClusterProps.Builder kmsKeyId(String kmsKeyId)
      Parameters:
      kmsKeyId - The Amazon Resource Name (ARN) of the KMS key that is used to encrypt the database instances in the DB cluster, such as arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef . If you enable the StorageEncrypted property but don't specify this property, the default KMS key is used. If you specify this property, you must set the StorageEncrypted property to true .
      Returns:
      this
    • preferredBackupWindow

      @Stability(Stable) public CfnDBClusterProps.Builder preferredBackupWindow(String preferredBackupWindow)
      Parameters:
      preferredBackupWindow - Specifies the daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod . An update may require some interruption.
      Returns:
      this
    • preferredMaintenanceWindow

      @Stability(Stable) public CfnDBClusterProps.Builder preferredMaintenanceWindow(String preferredMaintenanceWindow)
      Parameters:
      preferredMaintenanceWindow - Specifies the weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).
      Returns:
      this
    • restoreToTime

      @Stability(Stable) public CfnDBClusterProps.Builder restoreToTime(String restoreToTime)
      Parameters:
      restoreToTime - Creates a new DB cluster from a DB snapshot or DB cluster snapshot. If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.

      If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.

      Returns:
      this
    • restoreType

      @Stability(Stable) public CfnDBClusterProps.Builder restoreType(String restoreType)
      Parameters:
      restoreType - Creates a new DB cluster from a DB snapshot or DB cluster snapshot. If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.

      If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.

      Returns:
      this
    • serverlessScalingConfiguration

      @Stability(Stable) public CfnDBClusterProps.Builder serverlessScalingConfiguration(IResolvable serverlessScalingConfiguration)
      Parameters:
      serverlessScalingConfiguration - Contains the scaling configuration of an Neptune Serverless DB cluster.
      Returns:
      this
    • serverlessScalingConfiguration

      @Stability(Stable) public CfnDBClusterProps.Builder serverlessScalingConfiguration(CfnDBCluster.ServerlessScalingConfigurationProperty serverlessScalingConfiguration)
      Parameters:
      serverlessScalingConfiguration - Contains the scaling configuration of an Neptune Serverless DB cluster.
      Returns:
      this
    • snapshotIdentifier

      @Stability(Stable) public CfnDBClusterProps.Builder snapshotIdentifier(String snapshotIdentifier)
      Parameters:
      snapshotIdentifier - Specifies the identifier for a DB cluster snapshot. Must match the identifier of an existing snapshot. After you restore a DB cluster using a SnapshotIdentifier , you must specify the same SnapshotIdentifier for any future updates to the DB cluster. When you specify this property for an update, the DB cluster is not restored from the snapshot again, and the data in the database is not changed.

      However, if you don't specify the SnapshotIdentifier , an empty DB cluster is created, and the original DB cluster is deleted. If you specify a property that is different from the previous snapshot restore property, the DB cluster is restored from the snapshot specified by the SnapshotIdentifier , and the original DB cluster is deleted.

      Returns:
      this
    • sourceDbClusterIdentifier

      @Stability(Stable) public CfnDBClusterProps.Builder sourceDbClusterIdentifier(String sourceDbClusterIdentifier)
      Parameters:
      sourceDbClusterIdentifier - Creates a new DB cluster from a DB snapshot or DB cluster snapshot. If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.

      If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.

      Returns:
      this
    • storageEncrypted

      @Stability(Stable) public CfnDBClusterProps.Builder storageEncrypted(Boolean storageEncrypted)
      Parameters:
      storageEncrypted - Indicates whether the DB cluster is encrypted. If you specify the KmsKeyId property, then you must enable encryption and set this property to true .

      If you enable the StorageEncrypted property but don't specify the KmsKeyId property, then the default KMS key is used. If you specify the KmsKeyId property, then that KMS key is used to encrypt the database instances in the DB cluster.

      If you specify the SourceDBClusterIdentifier property, and don't specify this property or disable it, the value is inherited from the source DB cluster. If the source DB cluster is encrypted, the KmsKeyId property from the source cluster is used.

      If you specify the DBSnapshotIdentifier and don't specify this property or disable it, the value is inherited from the snapshot and the specified KmsKeyId property from the snapshot is used.

      Returns:
      this
    • storageEncrypted

      @Stability(Stable) public CfnDBClusterProps.Builder storageEncrypted(IResolvable storageEncrypted)
      Parameters:
      storageEncrypted - Indicates whether the DB cluster is encrypted. If you specify the KmsKeyId property, then you must enable encryption and set this property to true .

      If you enable the StorageEncrypted property but don't specify the KmsKeyId property, then the default KMS key is used. If you specify the KmsKeyId property, then that KMS key is used to encrypt the database instances in the DB cluster.

      If you specify the SourceDBClusterIdentifier property, and don't specify this property or disable it, the value is inherited from the source DB cluster. If the source DB cluster is encrypted, the KmsKeyId property from the source cluster is used.

      If you specify the DBSnapshotIdentifier and don't specify this property or disable it, the value is inherited from the snapshot and the specified KmsKeyId property from the snapshot is used.

      Returns:
      this
    • tags

      @Stability(Stable) public CfnDBClusterProps.Builder tags(List<? extends CfnTag> tags)
      Sets the value of CfnDBClusterProps.getTags()
      Parameters:
      tags - The tags assigned to this cluster.
      Returns:
      this
    • useLatestRestorableTime

      @Stability(Stable) public CfnDBClusterProps.Builder useLatestRestorableTime(Boolean useLatestRestorableTime)
      Parameters:
      useLatestRestorableTime - Creates a new DB cluster from a DB snapshot or DB cluster snapshot. If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.

      If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.

      Returns:
      this
    • useLatestRestorableTime

      @Stability(Stable) public CfnDBClusterProps.Builder useLatestRestorableTime(IResolvable useLatestRestorableTime)
      Parameters:
      useLatestRestorableTime - Creates a new DB cluster from a DB snapshot or DB cluster snapshot. If a DB snapshot is specified, the target DB cluster is created from the source DB snapshot with a default configuration and default security group.

      If a DB cluster snapshot is specified, the target DB cluster is created from the source DB cluster restore point with the same configuration as the original source DB cluster, except that the new DB cluster is created with the default security group.

      Returns:
      this
    • vpcSecurityGroupIds

      @Stability(Stable) public CfnDBClusterProps.Builder vpcSecurityGroupIds(List<String> vpcSecurityGroupIds)
      Parameters:
      vpcSecurityGroupIds - Provides a list of VPC security groups that the DB cluster belongs to.
      Returns:
      this
    • build

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