Class ClusterInstanceProps.Builder
java.lang.Object
software.amazon.awscdk.services.rds.ClusterInstanceProps.Builder
- All Implemented Interfaces:
software.amazon.jsii.Builder<ClusterInstanceProps>
- Enclosing interface:
ClusterInstanceProps
@Stability(Stable)
public static final class ClusterInstanceProps.Builder
extends Object
implements software.amazon.jsii.Builder<ClusterInstanceProps>
A builder for
ClusterInstanceProps
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionallowMajorVersionUpgrade
(Boolean allowMajorVersionUpgrade) Sets the value ofClusterInstanceOptions.getAllowMajorVersionUpgrade()
autoMinorVersionUpgrade
(Boolean autoMinorVersionUpgrade) Sets the value ofClusterInstanceOptions.getAutoMinorVersionUpgrade()
build()
Builds the configured instance.caCertificate
(CaCertificate caCertificate) Sets the value ofClusterInstanceOptions.getCaCertificate()
enablePerformanceInsights
(Boolean enablePerformanceInsights) Sets the value ofClusterInstanceOptions.getEnablePerformanceInsights()
instanceIdentifier
(String instanceIdentifier) Sets the value ofClusterInstanceOptions.getInstanceIdentifier()
instanceType
(ClusterInstanceType instanceType) Sets the value ofClusterInstanceProps.getInstanceType()
isFromLegacyInstanceProps
(Boolean isFromLegacyInstanceProps) Sets the value ofClusterInstanceOptions.getIsFromLegacyInstanceProps()
parameterGroup
(IParameterGroup parameterGroup) Sets the value ofClusterInstanceOptions.getParameterGroup()
parameters
(Map<String, String> parameters) Sets the value ofClusterInstanceOptions.getParameters()
performanceInsightEncryptionKey
(IKey performanceInsightEncryptionKey) Sets the value ofClusterInstanceOptions.getPerformanceInsightEncryptionKey()
performanceInsightRetention
(PerformanceInsightRetention performanceInsightRetention) Sets the value ofClusterInstanceOptions.getPerformanceInsightRetention()
preferredMaintenanceWindow
(String preferredMaintenanceWindow) Sets the value ofClusterInstanceOptions.getPreferredMaintenanceWindow()
promotionTier
(Number promotionTier) Sets the value ofClusterInstanceProps.getPromotionTier()
publiclyAccessible
(Boolean publiclyAccessible) Sets the value ofClusterInstanceOptions.getPubliclyAccessible()
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
instanceType
@Stability(Stable) public ClusterInstanceProps.Builder instanceType(ClusterInstanceType instanceType) Sets the value ofClusterInstanceProps.getInstanceType()
- Parameters:
instanceType
- The type of cluster instance to create. This parameter is required. Can be either provisioned or serverless v2- Returns:
this
-
promotionTier
Sets the value ofClusterInstanceProps.getPromotionTier()
- Parameters:
promotionTier
- The promotion tier of the cluster instance. This matters more for serverlessV2 instances. If a serverless instance is in tier 0-1 then it will scale with the writer.For provisioned instances this just determines the failover priority. If multiple instances have the same priority then one will be picked at random
- Returns:
this
-
allowMajorVersionUpgrade
@Stability(Stable) public ClusterInstanceProps.Builder allowMajorVersionUpgrade(Boolean allowMajorVersionUpgrade) Sets the value ofClusterInstanceOptions.getAllowMajorVersionUpgrade()
- Parameters:
allowMajorVersionUpgrade
- Whether to allow upgrade of major version for the DB instance.- Returns:
this
-
autoMinorVersionUpgrade
@Stability(Stable) public ClusterInstanceProps.Builder autoMinorVersionUpgrade(Boolean autoMinorVersionUpgrade) Sets the value ofClusterInstanceOptions.getAutoMinorVersionUpgrade()
- Parameters:
autoMinorVersionUpgrade
- Whether to enable automatic upgrade of minor version for the DB instance.- Returns:
this
-
caCertificate
Sets the value ofClusterInstanceOptions.getCaCertificate()
- Parameters:
caCertificate
- The identifier of the CA certificate for this DB cluster's instances. Specifying or updating this property triggers a reboot.For RDS DB engines:
- Returns:
this
-
enablePerformanceInsights
@Stability(Stable) public ClusterInstanceProps.Builder enablePerformanceInsights(Boolean enablePerformanceInsights) Sets the value ofClusterInstanceOptions.getEnablePerformanceInsights()
- Parameters:
enablePerformanceInsights
- Whether to enable Performance Insights for the DB instance.- Returns:
this
-
instanceIdentifier
@Stability(Stable) public ClusterInstanceProps.Builder instanceIdentifier(String instanceIdentifier) Sets the value ofClusterInstanceOptions.getInstanceIdentifier()
- Parameters:
instanceIdentifier
- The identifier for the database instance.- Returns:
this
-
isFromLegacyInstanceProps
@Stability(Stable) public ClusterInstanceProps.Builder isFromLegacyInstanceProps(Boolean isFromLegacyInstanceProps) Sets the value ofClusterInstanceOptions.getIsFromLegacyInstanceProps()
- Parameters:
isFromLegacyInstanceProps
- Only used for migrating existing clusters from usinginstanceProps
towriter
andreaders
.- Returns:
this
-
parameterGroup
@Stability(Stable) public ClusterInstanceProps.Builder parameterGroup(IParameterGroup parameterGroup) Sets the value ofClusterInstanceOptions.getParameterGroup()
- Parameters:
parameterGroup
- The DB parameter group to associate with the instance. This is only needed if you need to configure different parameter groups for each individual instance, otherwise you should not provide this and just use the cluster parameter group- Returns:
this
-
parameters
Sets the value ofClusterInstanceOptions.getParameters()
- Parameters:
parameters
- The parameters in the DBParameterGroup to create automatically. You can only specify parameterGroup or parameters but not both. You need to use a versioned engine to auto-generate a DBParameterGroup.- Returns:
this
-
performanceInsightEncryptionKey
@Stability(Stable) public ClusterInstanceProps.Builder performanceInsightEncryptionKey(IKey performanceInsightEncryptionKey) Sets the value ofClusterInstanceOptions.getPerformanceInsightEncryptionKey()
- Parameters:
performanceInsightEncryptionKey
- The AWS KMS key for encryption of Performance Insights data.- Returns:
this
-
performanceInsightRetention
@Stability(Stable) public ClusterInstanceProps.Builder performanceInsightRetention(PerformanceInsightRetention performanceInsightRetention) Sets the value ofClusterInstanceOptions.getPerformanceInsightRetention()
- Parameters:
performanceInsightRetention
- The amount of time, in days, to retain Performance Insights data.- Returns:
this
-
preferredMaintenanceWindow
@Stability(Stable) public ClusterInstanceProps.Builder preferredMaintenanceWindow(String preferredMaintenanceWindow) Sets the value ofClusterInstanceOptions.getPreferredMaintenanceWindow()
- Parameters:
preferredMaintenanceWindow
- A preferred maintenance window day/time range. Should be specified as a range ddd:hh24:mi-ddd:hh24:mi (24H Clock UTC). Example: 'Sun:23:45-Mon:00:15'- Returns:
this
-
publiclyAccessible
@Stability(Stable) public ClusterInstanceProps.Builder publiclyAccessible(Boolean publiclyAccessible) Sets the value ofClusterInstanceOptions.getPubliclyAccessible()
- Parameters:
publiclyAccessible
- Indicates whether the DB instance is an internet-facing instance. If not specified, the cluster's vpcSubnets will be used to determine if the instance is internet-facing or not.- Returns:
this
-
build
Builds the configured instance.- Specified by:
build
in interfacesoftware.amazon.jsii.Builder<ClusterInstanceProps>
- Returns:
- a new instance of
ClusterInstanceProps
- Throws:
NullPointerException
- if any required attribute was not provided
-