Class CfnCapacityProvider.AutoScalingGroupProviderProperty.Builder
- All Implemented Interfaces:
software.amazon.jsii.Builder<CfnCapacityProvider.AutoScalingGroupProviderProperty>
- Enclosing interface:
CfnCapacityProvider.AutoScalingGroupProviderProperty
CfnCapacityProvider.AutoScalingGroupProviderProperty
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionautoScalingGroupArn
(String autoScalingGroupArn) build()
Builds the configured instance.managedDraining
(String managedDraining) managedScaling
(IResolvable managedScaling) Sets the value ofCfnCapacityProvider.AutoScalingGroupProviderProperty.getManagedScaling()
managedScaling
(CfnCapacityProvider.ManagedScalingProperty managedScaling) Sets the value ofCfnCapacityProvider.AutoScalingGroupProviderProperty.getManagedScaling()
managedTerminationProtection
(String managedTerminationProtection)
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
autoScalingGroupArn
@Stability(Stable) public CfnCapacityProvider.AutoScalingGroupProviderProperty.Builder autoScalingGroupArn(String autoScalingGroupArn) - Parameters:
autoScalingGroupArn
- The Amazon Resource Name (ARN) that identifies the Auto Scaling group, or the Auto Scaling group name. This parameter is required.- Returns:
this
-
managedDraining
@Stability(Stable) public CfnCapacityProvider.AutoScalingGroupProviderProperty.Builder managedDraining(String managedDraining) - Parameters:
managedDraining
- The managed draining option for the Auto Scaling group capacity provider. When you enable this, Amazon ECS manages and gracefully drains the EC2 container instances that are in the Auto Scaling group capacity provider.- Returns:
this
-
managedScaling
@Stability(Stable) public CfnCapacityProvider.AutoScalingGroupProviderProperty.Builder managedScaling(IResolvable managedScaling) Sets the value ofCfnCapacityProvider.AutoScalingGroupProviderProperty.getManagedScaling()
- Parameters:
managedScaling
- The managed scaling settings for the Auto Scaling group capacity provider.- Returns:
this
-
managedScaling
@Stability(Stable) public CfnCapacityProvider.AutoScalingGroupProviderProperty.Builder managedScaling(CfnCapacityProvider.ManagedScalingProperty managedScaling) Sets the value ofCfnCapacityProvider.AutoScalingGroupProviderProperty.getManagedScaling()
- Parameters:
managedScaling
- The managed scaling settings for the Auto Scaling group capacity provider.- Returns:
this
-
managedTerminationProtection
@Stability(Stable) public CfnCapacityProvider.AutoScalingGroupProviderProperty.Builder managedTerminationProtection(String managedTerminationProtection) Sets the value ofCfnCapacityProvider.AutoScalingGroupProviderProperty.getManagedTerminationProtection()
- Parameters:
managedTerminationProtection
- The managed termination protection setting to use for the Auto Scaling group capacity provider. This determines whether the Auto Scaling group has managed termination protection. The default is off.When using managed termination protection, managed scaling must also be used otherwise managed termination protection doesn't work.
When managed termination protection is on, Amazon ECS prevents the Amazon EC2 instances in an Auto Scaling group that contain tasks from being terminated during a scale-in action. The Auto Scaling group and each instance in the Auto Scaling group must have instance protection from scale-in actions on as well. For more information, see Instance Protection in the AWS Auto Scaling User Guide .
When managed termination protection is off, your Amazon EC2 instances aren't protected from termination when the Auto Scaling group scales in.
- Returns:
this
-
build
Builds the configured instance.- Specified by:
build
in interfacesoftware.amazon.jsii.Builder<CfnCapacityProvider.AutoScalingGroupProviderProperty>
- Returns:
- a new instance of
CfnCapacityProvider.AutoScalingGroupProviderProperty
- Throws:
NullPointerException
- if any required attribute was not provided
-