aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
2 lines (1 loc) • 1.43 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:!0}),exports.BackupableResourcesCollector=void 0;const dynamodb=require("../../aws-dynamodb"),ec2=require("../../aws-ec2"),efs=require("../../aws-efs"),rds=require("../../aws-rds"),core_1=require("../../core");class BackupableResourcesCollector{constructor(){this.resources=[]}visit(node){node instanceof efs.CfnFileSystem&&this.resources.push(core_1.Stack.of(node).formatArn({service:"elasticfilesystem",resource:"file-system",resourceName:node.ref})),node instanceof dynamodb.CfnTable&&this.resources.push(core_1.Stack.of(node).formatArn({service:"dynamodb",resource:"table",resourceName:node.ref})),node instanceof ec2.CfnInstance&&this.resources.push(core_1.Stack.of(node).formatArn({service:"ec2",resource:"instance",resourceName:node.ref})),node instanceof ec2.CfnVolume&&this.resources.push(core_1.Stack.of(node).formatArn({service:"ec2",resource:"volume",resourceName:node.ref})),node instanceof rds.CfnDBInstance&&(node.dbClusterIdentifier||this.resources.push(core_1.Stack.of(node).formatArn({service:"rds",resource:"db",arnFormat:core_1.ArnFormat.COLON_RESOURCE_NAME,resourceName:node.ref}))),node instanceof rds.CfnDBCluster&&this.resources.push(core_1.Stack.of(node).formatArn({service:"rds",resource:"cluster",arnFormat:core_1.ArnFormat.COLON_RESOURCE_NAME,resourceName:node.ref}))}}exports.BackupableResourcesCollector=BackupableResourcesCollector;