java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
All Implemented Interfaces:
IConstruct, IDependable, IInspectable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:30:35.038Z") @Stability(Stable) public class CfnResourceSet extends CfnResource implements IInspectable
A CloudFormation AWS::Route53RecoveryReadiness::ResourceSet.

Creates a resource set in Amazon Route 53 Application Recovery Controller. A resource set is a set of resources of one type, such as Network Load Balancers, that span multiple cells. You can associate a resource set with a readiness check to have Route 53 ARC continually monitor the resources in the set for failover readiness.

You typically create a resource set and a readiness check for each supported type of AWS resource in your application.

For more information, see Readiness checks, resource sets, and readiness scopes in the Amazon Route 53 Application Recovery Controller Developer Guide.

Route 53 ARC Readiness supports us-east-1 and us-west-2 AWS Regions only.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.route53recoveryreadiness.*;
 CfnResourceSet cfnResourceSet = CfnResourceSet.Builder.create(this, "MyCfnResourceSet")
         .resources(List.of(ResourceProperty.builder()
                 .componentId("componentId")
                 .dnsTargetResource(DNSTargetResourceProperty.builder()
                         .domainName("domainName")
                         .hostedZoneArn("hostedZoneArn")
                         .recordSetId("recordSetId")
                         .recordType("recordType")
                         .targetResource(TargetResourceProperty.builder()
                                 .nlbResource(NLBResourceProperty.builder()
                                         .arn("arn")
                                         .build())
                                 .r53Resource(R53ResourceRecordProperty.builder()
                                         .domainName("domainName")
                                         .recordSetId("recordSetId")
                                         .build())
                                 .build())
                         .build())
                 .readinessScopes(List.of("readinessScopes"))
                 .resourceArn("resourceArn")
                 .build()))
         .resourceSetType("resourceSetType")
         // the properties below are optional
         .resourceSetName("resourceSetName")
         .tags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .build();
 
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnResourceSet

      protected CfnResourceSet(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnResourceSet

      protected CfnResourceSet(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnResourceSet

      @Stability(Stable) public CfnResourceSet(@NotNull Construct scope, @NotNull String id, @NotNull CfnResourceSetProps props)
      Create a new AWS::Route53RecoveryReadiness::ResourceSet.

      Parameters:
      scope -
      • scope in which this resource is defined.
      This parameter is required.
      id -
      • scoped id of the resource.
      This parameter is required.
      props -
      • resource properties.
      This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector -
      • tree inspector to collect and process attributes.
      This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrResourceSetArn

      @Stability(Stable) @NotNull public String getAttrResourceSetArn()
      The Amazon Resource Name (ARN) of the resource set.
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getTags

      @Stability(Stable) @NotNull public TagManager getTags()
      A tag to associate with the parameters for a resource set.
    • getResources

      @Stability(Stable) @NotNull public Object getResources()
      A list of resource objects in the resource set.
    • setResources

      @Stability(Stable) public void setResources(@NotNull IResolvable value)
      A list of resource objects in the resource set.
    • setResources

      @Stability(Stable) public void setResources(@NotNull List<Object> value)
      A list of resource objects in the resource set.
    • getResourceSetType

      @Stability(Stable) @NotNull public String getResourceSetType()
      The resource type of the resources in the resource set. Enter one of the following values for resource type:.

      AWS::ApiGateway::Stage, AWS::ApiGatewayV2::Stage, AWS::AutoScaling::AutoScalingGroup, AWS::CloudWatch::Alarm, AWS::EC2::CustomerGateway, AWS::DynamoDB::Table, AWS::EC2::Volume, AWS::ElasticLoadBalancing::LoadBalancer, AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::Lambda::Function, AWS::MSK::Cluster, AWS::RDS::DBCluster, AWS::Route53::HealthCheck, AWS::SQS::Queue, AWS::SNS::Topic, AWS::SNS::Subscription, AWS::EC2::VPC, AWS::EC2::VPNConnection, AWS::EC2::VPNGateway, AWS::Route53RecoveryReadiness::DNSTargetResource.

      Note that AWS::Route53RecoveryReadiness::DNSTargetResource is only used for this setting. It isn't an actual AWS CloudFormation resource type.

    • setResourceSetType

      @Stability(Stable) public void setResourceSetType(@NotNull String value)
      The resource type of the resources in the resource set. Enter one of the following values for resource type:.

      AWS::ApiGateway::Stage, AWS::ApiGatewayV2::Stage, AWS::AutoScaling::AutoScalingGroup, AWS::CloudWatch::Alarm, AWS::EC2::CustomerGateway, AWS::DynamoDB::Table, AWS::EC2::Volume, AWS::ElasticLoadBalancing::LoadBalancer, AWS::ElasticLoadBalancingV2::LoadBalancer, AWS::Lambda::Function, AWS::MSK::Cluster, AWS::RDS::DBCluster, AWS::Route53::HealthCheck, AWS::SQS::Queue, AWS::SNS::Topic, AWS::SNS::Subscription, AWS::EC2::VPC, AWS::EC2::VPNConnection, AWS::EC2::VPNGateway, AWS::Route53RecoveryReadiness::DNSTargetResource.

      Note that AWS::Route53RecoveryReadiness::DNSTargetResource is only used for this setting. It isn't an actual AWS CloudFormation resource type.

    • getResourceSetName

      @Stability(Stable) @Nullable public String getResourceSetName()
      The name of the resource set to create.
    • setResourceSetName

      @Stability(Stable) public void setResourceSetName(@Nullable String value)
      The name of the resource set to create.