aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
2 lines (1 loc) • 37.3 kB
JavaScript
"use strict";var _a,_b,_c,_d,_e;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnDBSubnetGroup=exports.CfnDBParameterGroup=exports.CfnDBInstance=exports.CfnDBClusterParameterGroup=exports.CfnDBCluster=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),cdk=require("../../core"),cfn_parse=require("../../core/lib/helpers-internal");function CfnDBClusterPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("associatedRoles",cdk.listValidator(CfnDBCluster_DBClusterRolePropertyValidator))(properties.associatedRoles)),errors.collect(cdk.propertyValidator("availabilityZones",cdk.listValidator(cdk.validateString))(properties.availabilityZones)),errors.collect(cdk.propertyValidator("backupRetentionPeriod",cdk.validateNumber)(properties.backupRetentionPeriod)),errors.collect(cdk.propertyValidator("dbClusterIdentifier",cdk.validateString)(properties.dbClusterIdentifier)),errors.collect(cdk.propertyValidator("dbClusterParameterGroupName",cdk.validateString)(properties.dbClusterParameterGroupName)),errors.collect(cdk.propertyValidator("dbSubnetGroupName",cdk.validateString)(properties.dbSubnetGroupName)),errors.collect(cdk.propertyValidator("deletionProtection",cdk.validateBoolean)(properties.deletionProtection)),errors.collect(cdk.propertyValidator("enableCloudwatchLogsExports",cdk.listValidator(cdk.validateString))(properties.enableCloudwatchLogsExports)),errors.collect(cdk.propertyValidator("engineVersion",cdk.validateString)(properties.engineVersion)),errors.collect(cdk.propertyValidator("iamAuthEnabled",cdk.validateBoolean)(properties.iamAuthEnabled)),errors.collect(cdk.propertyValidator("kmsKeyId",cdk.validateString)(properties.kmsKeyId)),errors.collect(cdk.propertyValidator("port",cdk.validateNumber)(properties.port)),errors.collect(cdk.propertyValidator("preferredBackupWindow",cdk.validateString)(properties.preferredBackupWindow)),errors.collect(cdk.propertyValidator("preferredMaintenanceWindow",cdk.validateString)(properties.preferredMaintenanceWindow)),errors.collect(cdk.propertyValidator("restoreToTime",cdk.validateString)(properties.restoreToTime)),errors.collect(cdk.propertyValidator("restoreType",cdk.validateString)(properties.restoreType)),errors.collect(cdk.propertyValidator("snapshotIdentifier",cdk.validateString)(properties.snapshotIdentifier)),errors.collect(cdk.propertyValidator("sourceDbClusterIdentifier",cdk.validateString)(properties.sourceDbClusterIdentifier)),errors.collect(cdk.propertyValidator("storageEncrypted",cdk.validateBoolean)(properties.storageEncrypted)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("useLatestRestorableTime",cdk.validateBoolean)(properties.useLatestRestorableTime)),errors.collect(cdk.propertyValidator("vpcSecurityGroupIds",cdk.listValidator(cdk.validateString))(properties.vpcSecurityGroupIds)),errors.wrap('supplied properties not correct for "CfnDBClusterProps"')}function cfnDBClusterPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDBClusterPropsValidator(properties).assertSuccess(),{AssociatedRoles:cdk.listMapper(cfnDBClusterDBClusterRolePropertyToCloudFormation)(properties.associatedRoles),AvailabilityZones:cdk.listMapper(cdk.stringToCloudFormation)(properties.availabilityZones),BackupRetentionPeriod:cdk.numberToCloudFormation(properties.backupRetentionPeriod),DBClusterIdentifier:cdk.stringToCloudFormation(properties.dbClusterIdentifier),DBClusterParameterGroupName:cdk.stringToCloudFormation(properties.dbClusterParameterGroupName),DBSubnetGroupName:cdk.stringToCloudFormation(properties.dbSubnetGroupName),DeletionProtection:cdk.booleanToCloudFormation(properties.deletionProtection),EnableCloudwatchLogsExports:cdk.listMapper(cdk.stringToCloudFormation)(properties.enableCloudwatchLogsExports),EngineVersion:cdk.stringToCloudFormation(properties.engineVersion),IamAuthEnabled:cdk.booleanToCloudFormation(properties.iamAuthEnabled),KmsKeyId:cdk.stringToCloudFormation(properties.kmsKeyId),Port:cdk.numberToCloudFormation(properties.port),PreferredBackupWindow:cdk.stringToCloudFormation(properties.preferredBackupWindow),PreferredMaintenanceWindow:cdk.stringToCloudFormation(properties.preferredMaintenanceWindow),RestoreToTime:cdk.stringToCloudFormation(properties.restoreToTime),RestoreType:cdk.stringToCloudFormation(properties.restoreType),SnapshotIdentifier:cdk.stringToCloudFormation(properties.snapshotIdentifier),SourceDBClusterIdentifier:cdk.stringToCloudFormation(properties.sourceDbClusterIdentifier),StorageEncrypted:cdk.booleanToCloudFormation(properties.storageEncrypted),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags),UseLatestRestorableTime:cdk.booleanToCloudFormation(properties.useLatestRestorableTime),VpcSecurityGroupIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.vpcSecurityGroupIds)}):properties}function CfnDBClusterPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("associatedRoles","AssociatedRoles",properties.AssociatedRoles!=null?cfn_parse.FromCloudFormation.getArray(CfnDBClusterDBClusterRolePropertyFromCloudFormation)(properties.AssociatedRoles):void 0),ret.addPropertyResult("availabilityZones","AvailabilityZones",properties.AvailabilityZones!=null?cfn_parse.FromCloudFormation.getStringArray(properties.AvailabilityZones):void 0),ret.addPropertyResult("backupRetentionPeriod","BackupRetentionPeriod",properties.BackupRetentionPeriod!=null?cfn_parse.FromCloudFormation.getNumber(properties.BackupRetentionPeriod):void 0),ret.addPropertyResult("dbClusterIdentifier","DBClusterIdentifier",properties.DBClusterIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.DBClusterIdentifier):void 0),ret.addPropertyResult("dbClusterParameterGroupName","DBClusterParameterGroupName",properties.DBClusterParameterGroupName!=null?cfn_parse.FromCloudFormation.getString(properties.DBClusterParameterGroupName):void 0),ret.addPropertyResult("dbSubnetGroupName","DBSubnetGroupName",properties.DBSubnetGroupName!=null?cfn_parse.FromCloudFormation.getString(properties.DBSubnetGroupName):void 0),ret.addPropertyResult("deletionProtection","DeletionProtection",properties.DeletionProtection!=null?cfn_parse.FromCloudFormation.getBoolean(properties.DeletionProtection):void 0),ret.addPropertyResult("enableCloudwatchLogsExports","EnableCloudwatchLogsExports",properties.EnableCloudwatchLogsExports!=null?cfn_parse.FromCloudFormation.getStringArray(properties.EnableCloudwatchLogsExports):void 0),ret.addPropertyResult("engineVersion","EngineVersion",properties.EngineVersion!=null?cfn_parse.FromCloudFormation.getString(properties.EngineVersion):void 0),ret.addPropertyResult("iamAuthEnabled","IamAuthEnabled",properties.IamAuthEnabled!=null?cfn_parse.FromCloudFormation.getBoolean(properties.IamAuthEnabled):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse.FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("port","Port",properties.Port!=null?cfn_parse.FromCloudFormation.getNumber(properties.Port):void 0),ret.addPropertyResult("preferredBackupWindow","PreferredBackupWindow",properties.PreferredBackupWindow!=null?cfn_parse.FromCloudFormation.getString(properties.PreferredBackupWindow):void 0),ret.addPropertyResult("preferredMaintenanceWindow","PreferredMaintenanceWindow",properties.PreferredMaintenanceWindow!=null?cfn_parse.FromCloudFormation.getString(properties.PreferredMaintenanceWindow):void 0),ret.addPropertyResult("restoreToTime","RestoreToTime",properties.RestoreToTime!=null?cfn_parse.FromCloudFormation.getString(properties.RestoreToTime):void 0),ret.addPropertyResult("restoreType","RestoreType",properties.RestoreType!=null?cfn_parse.FromCloudFormation.getString(properties.RestoreType):void 0),ret.addPropertyResult("snapshotIdentifier","SnapshotIdentifier",properties.SnapshotIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.SnapshotIdentifier):void 0),ret.addPropertyResult("sourceDbClusterIdentifier","SourceDBClusterIdentifier",properties.SourceDBClusterIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.SourceDBClusterIdentifier):void 0),ret.addPropertyResult("storageEncrypted","StorageEncrypted",properties.StorageEncrypted!=null?cfn_parse.FromCloudFormation.getBoolean(properties.StorageEncrypted):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("useLatestRestorableTime","UseLatestRestorableTime",properties.UseLatestRestorableTime!=null?cfn_parse.FromCloudFormation.getBoolean(properties.UseLatestRestorableTime):void 0),ret.addPropertyResult("vpcSecurityGroupIds","VpcSecurityGroupIds",properties.VpcSecurityGroupIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.VpcSecurityGroupIds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDBCluster extends cdk.CfnResource{constructor(scope,id,props={}){super(scope,id,{type:CfnDBCluster.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_neptune_CfnDBClusterProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDBCluster),error}this.attrClusterResourceId=cdk.Token.asString(this.getAtt("ClusterResourceId",cdk.ResolutionTypeHint.STRING)),this.attrEndpoint=cdk.Token.asString(this.getAtt("Endpoint",cdk.ResolutionTypeHint.STRING)),this.attrPort=cdk.Token.asString(this.getAtt("Port",cdk.ResolutionTypeHint.STRING)),this.attrReadEndpoint=cdk.Token.asString(this.getAtt("ReadEndpoint",cdk.ResolutionTypeHint.STRING)),this.associatedRoles=props.associatedRoles,this.availabilityZones=props.availabilityZones,this.backupRetentionPeriod=props.backupRetentionPeriod,this.dbClusterIdentifier=props.dbClusterIdentifier,this.dbClusterParameterGroupName=props.dbClusterParameterGroupName,this.dbSubnetGroupName=props.dbSubnetGroupName,this.deletionProtection=props.deletionProtection,this.enableCloudwatchLogsExports=props.enableCloudwatchLogsExports,this.engineVersion=props.engineVersion,this.iamAuthEnabled=props.iamAuthEnabled,this.kmsKeyId=props.kmsKeyId,this.port=props.port,this.preferredBackupWindow=props.preferredBackupWindow,this.preferredMaintenanceWindow=props.preferredMaintenanceWindow,this.restoreToTime=props.restoreToTime,this.restoreType=props.restoreType,this.snapshotIdentifier=props.snapshotIdentifier,this.sourceDbClusterIdentifier=props.sourceDbClusterIdentifier,this.storageEncrypted=props.storageEncrypted,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Neptune::DBCluster",props.tags,{tagPropertyName:"tags"}),this.useLatestRestorableTime=props.useLatestRestorableTime,this.vpcSecurityGroupIds=props.vpcSecurityGroupIds,this.node.scope&&cdk.Resource.isResource(this.node.scope)&&this.node.addValidation({validate:()=>this.cfnOptions.deletionPolicy===void 0?["'AWS::Neptune::DBCluster' is a stateful resource type, and you must specify a Removal Policy for it. Call 'resource.applyRemovalPolicy()'."]:[]})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDBClusterPropsFromCloudFormation(resourceProperties),ret=new CfnDBCluster(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnDBCluster.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{associatedRoles:this.associatedRoles,availabilityZones:this.availabilityZones,backupRetentionPeriod:this.backupRetentionPeriod,dbClusterIdentifier:this.dbClusterIdentifier,dbClusterParameterGroupName:this.dbClusterParameterGroupName,dbSubnetGroupName:this.dbSubnetGroupName,deletionProtection:this.deletionProtection,enableCloudwatchLogsExports:this.enableCloudwatchLogsExports,engineVersion:this.engineVersion,iamAuthEnabled:this.iamAuthEnabled,kmsKeyId:this.kmsKeyId,port:this.port,preferredBackupWindow:this.preferredBackupWindow,preferredMaintenanceWindow:this.preferredMaintenanceWindow,restoreToTime:this.restoreToTime,restoreType:this.restoreType,snapshotIdentifier:this.snapshotIdentifier,sourceDbClusterIdentifier:this.sourceDbClusterIdentifier,storageEncrypted:this.storageEncrypted,tags:this.tags.renderTags(),useLatestRestorableTime:this.useLatestRestorableTime,vpcSecurityGroupIds:this.vpcSecurityGroupIds}}renderProperties(props){return cfnDBClusterPropsToCloudFormation(props)}}exports.CfnDBCluster=CfnDBCluster,_a=JSII_RTTI_SYMBOL_1,CfnDBCluster[_a]={fqn:"aws-cdk-lib.aws_neptune.CfnDBCluster",version:"2.70.0"},CfnDBCluster.CFN_RESOURCE_TYPE_NAME="AWS::Neptune::DBCluster";function CfnDBCluster_DBClusterRolePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("featureName",cdk.validateString)(properties.featureName)),errors.collect(cdk.propertyValidator("roleArn",cdk.requiredValidator)(properties.roleArn)),errors.collect(cdk.propertyValidator("roleArn",cdk.validateString)(properties.roleArn)),errors.wrap('supplied properties not correct for "DBClusterRoleProperty"')}function cfnDBClusterDBClusterRolePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDBCluster_DBClusterRolePropertyValidator(properties).assertSuccess(),{FeatureName:cdk.stringToCloudFormation(properties.featureName),RoleArn:cdk.stringToCloudFormation(properties.roleArn)}):properties}function CfnDBClusterDBClusterRolePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("featureName","FeatureName",properties.FeatureName!=null?cfn_parse.FromCloudFormation.getString(properties.FeatureName):void 0),ret.addPropertyResult("roleArn","RoleArn",cfn_parse.FromCloudFormation.getString(properties.RoleArn)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDBClusterParameterGroupPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("description",cdk.requiredValidator)(properties.description)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("family",cdk.requiredValidator)(properties.family)),errors.collect(cdk.propertyValidator("family",cdk.validateString)(properties.family)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("parameters",cdk.requiredValidator)(properties.parameters)),errors.collect(cdk.propertyValidator("parameters",cdk.validateObject)(properties.parameters)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDBClusterParameterGroupProps"')}function cfnDBClusterParameterGroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDBClusterParameterGroupPropsValidator(properties).assertSuccess(),{Description:cdk.stringToCloudFormation(properties.description),Family:cdk.stringToCloudFormation(properties.family),Parameters:cdk.objectToCloudFormation(properties.parameters),Name:cdk.stringToCloudFormation(properties.name),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDBClusterParameterGroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("description","Description",cfn_parse.FromCloudFormation.getString(properties.Description)),ret.addPropertyResult("family","Family",cfn_parse.FromCloudFormation.getString(properties.Family)),ret.addPropertyResult("parameters","Parameters",cfn_parse.FromCloudFormation.getAny(properties.Parameters)),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse.FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDBClusterParameterGroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnDBClusterParameterGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_neptune_CfnDBClusterParameterGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDBClusterParameterGroup),error}cdk.requireProperty(props,"description",this),cdk.requireProperty(props,"family",this),cdk.requireProperty(props,"parameters",this),this.description=props.description,this.family=props.family,this.parameters=props.parameters,this.name=props.name,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Neptune::DBClusterParameterGroup",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDBClusterParameterGroupPropsFromCloudFormation(resourceProperties),ret=new CfnDBClusterParameterGroup(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnDBClusterParameterGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{description:this.description,family:this.family,parameters:this.parameters,name:this.name,tags:this.tags.renderTags()}}renderProperties(props){return cfnDBClusterParameterGroupPropsToCloudFormation(props)}}exports.CfnDBClusterParameterGroup=CfnDBClusterParameterGroup,_b=JSII_RTTI_SYMBOL_1,CfnDBClusterParameterGroup[_b]={fqn:"aws-cdk-lib.aws_neptune.CfnDBClusterParameterGroup",version:"2.70.0"},CfnDBClusterParameterGroup.CFN_RESOURCE_TYPE_NAME="AWS::Neptune::DBClusterParameterGroup";function CfnDBInstancePropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("allowMajorVersionUpgrade",cdk.validateBoolean)(properties.allowMajorVersionUpgrade)),errors.collect(cdk.propertyValidator("autoMinorVersionUpgrade",cdk.validateBoolean)(properties.autoMinorVersionUpgrade)),errors.collect(cdk.propertyValidator("availabilityZone",cdk.validateString)(properties.availabilityZone)),errors.collect(cdk.propertyValidator("dbClusterIdentifier",cdk.validateString)(properties.dbClusterIdentifier)),errors.collect(cdk.propertyValidator("dbInstanceClass",cdk.requiredValidator)(properties.dbInstanceClass)),errors.collect(cdk.propertyValidator("dbInstanceClass",cdk.validateString)(properties.dbInstanceClass)),errors.collect(cdk.propertyValidator("dbInstanceIdentifier",cdk.validateString)(properties.dbInstanceIdentifier)),errors.collect(cdk.propertyValidator("dbParameterGroupName",cdk.validateString)(properties.dbParameterGroupName)),errors.collect(cdk.propertyValidator("dbSnapshotIdentifier",cdk.validateString)(properties.dbSnapshotIdentifier)),errors.collect(cdk.propertyValidator("dbSubnetGroupName",cdk.validateString)(properties.dbSubnetGroupName)),errors.collect(cdk.propertyValidator("preferredMaintenanceWindow",cdk.validateString)(properties.preferredMaintenanceWindow)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDBInstanceProps"')}function cfnDBInstancePropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDBInstancePropsValidator(properties).assertSuccess(),{DBInstanceClass:cdk.stringToCloudFormation(properties.dbInstanceClass),AllowMajorVersionUpgrade:cdk.booleanToCloudFormation(properties.allowMajorVersionUpgrade),AutoMinorVersionUpgrade:cdk.booleanToCloudFormation(properties.autoMinorVersionUpgrade),AvailabilityZone:cdk.stringToCloudFormation(properties.availabilityZone),DBClusterIdentifier:cdk.stringToCloudFormation(properties.dbClusterIdentifier),DBInstanceIdentifier:cdk.stringToCloudFormation(properties.dbInstanceIdentifier),DBParameterGroupName:cdk.stringToCloudFormation(properties.dbParameterGroupName),DBSnapshotIdentifier:cdk.stringToCloudFormation(properties.dbSnapshotIdentifier),DBSubnetGroupName:cdk.stringToCloudFormation(properties.dbSubnetGroupName),PreferredMaintenanceWindow:cdk.stringToCloudFormation(properties.preferredMaintenanceWindow),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDBInstancePropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("dbInstanceClass","DBInstanceClass",cfn_parse.FromCloudFormation.getString(properties.DBInstanceClass)),ret.addPropertyResult("allowMajorVersionUpgrade","AllowMajorVersionUpgrade",properties.AllowMajorVersionUpgrade!=null?cfn_parse.FromCloudFormation.getBoolean(properties.AllowMajorVersionUpgrade):void 0),ret.addPropertyResult("autoMinorVersionUpgrade","AutoMinorVersionUpgrade",properties.AutoMinorVersionUpgrade!=null?cfn_parse.FromCloudFormation.getBoolean(properties.AutoMinorVersionUpgrade):void 0),ret.addPropertyResult("availabilityZone","AvailabilityZone",properties.AvailabilityZone!=null?cfn_parse.FromCloudFormation.getString(properties.AvailabilityZone):void 0),ret.addPropertyResult("dbClusterIdentifier","DBClusterIdentifier",properties.DBClusterIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.DBClusterIdentifier):void 0),ret.addPropertyResult("dbInstanceIdentifier","DBInstanceIdentifier",properties.DBInstanceIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.DBInstanceIdentifier):void 0),ret.addPropertyResult("dbParameterGroupName","DBParameterGroupName",properties.DBParameterGroupName!=null?cfn_parse.FromCloudFormation.getString(properties.DBParameterGroupName):void 0),ret.addPropertyResult("dbSnapshotIdentifier","DBSnapshotIdentifier",properties.DBSnapshotIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.DBSnapshotIdentifier):void 0),ret.addPropertyResult("dbSubnetGroupName","DBSubnetGroupName",properties.DBSubnetGroupName!=null?cfn_parse.FromCloudFormation.getString(properties.DBSubnetGroupName):void 0),ret.addPropertyResult("preferredMaintenanceWindow","PreferredMaintenanceWindow",properties.PreferredMaintenanceWindow!=null?cfn_parse.FromCloudFormation.getString(properties.PreferredMaintenanceWindow):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDBInstance extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnDBInstance.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_neptune_CfnDBInstanceProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDBInstance),error}cdk.requireProperty(props,"dbInstanceClass",this),this.attrEndpoint=cdk.Token.asString(this.getAtt("Endpoint",cdk.ResolutionTypeHint.STRING)),this.attrPort=cdk.Token.asString(this.getAtt("Port",cdk.ResolutionTypeHint.STRING)),this.dbInstanceClass=props.dbInstanceClass,this.allowMajorVersionUpgrade=props.allowMajorVersionUpgrade,this.autoMinorVersionUpgrade=props.autoMinorVersionUpgrade,this.availabilityZone=props.availabilityZone,this.dbClusterIdentifier=props.dbClusterIdentifier,this.dbInstanceIdentifier=props.dbInstanceIdentifier,this.dbParameterGroupName=props.dbParameterGroupName,this.dbSnapshotIdentifier=props.dbSnapshotIdentifier,this.dbSubnetGroupName=props.dbSubnetGroupName,this.preferredMaintenanceWindow=props.preferredMaintenanceWindow,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Neptune::DBInstance",props.tags,{tagPropertyName:"tags"}),this.node.scope&&cdk.Resource.isResource(this.node.scope)&&this.node.addValidation({validate:()=>this.cfnOptions.deletionPolicy===void 0?["'AWS::Neptune::DBInstance' is a stateful resource type, and you must specify a Removal Policy for it. Call 'resource.applyRemovalPolicy()'."]:[]})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDBInstancePropsFromCloudFormation(resourceProperties),ret=new CfnDBInstance(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnDBInstance.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{dbInstanceClass:this.dbInstanceClass,allowMajorVersionUpgrade:this.allowMajorVersionUpgrade,autoMinorVersionUpgrade:this.autoMinorVersionUpgrade,availabilityZone:this.availabilityZone,dbClusterIdentifier:this.dbClusterIdentifier,dbInstanceIdentifier:this.dbInstanceIdentifier,dbParameterGroupName:this.dbParameterGroupName,dbSnapshotIdentifier:this.dbSnapshotIdentifier,dbSubnetGroupName:this.dbSubnetGroupName,preferredMaintenanceWindow:this.preferredMaintenanceWindow,tags:this.tags.renderTags()}}renderProperties(props){return cfnDBInstancePropsToCloudFormation(props)}}exports.CfnDBInstance=CfnDBInstance,_c=JSII_RTTI_SYMBOL_1,CfnDBInstance[_c]={fqn:"aws-cdk-lib.aws_neptune.CfnDBInstance",version:"2.70.0"},CfnDBInstance.CFN_RESOURCE_TYPE_NAME="AWS::Neptune::DBInstance";function CfnDBParameterGroupPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("description",cdk.requiredValidator)(properties.description)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("family",cdk.requiredValidator)(properties.family)),errors.collect(cdk.propertyValidator("family",cdk.validateString)(properties.family)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("parameters",cdk.requiredValidator)(properties.parameters)),errors.collect(cdk.propertyValidator("parameters",cdk.validateObject)(properties.parameters)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDBParameterGroupProps"')}function cfnDBParameterGroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDBParameterGroupPropsValidator(properties).assertSuccess(),{Description:cdk.stringToCloudFormation(properties.description),Family:cdk.stringToCloudFormation(properties.family),Parameters:cdk.objectToCloudFormation(properties.parameters),Name:cdk.stringToCloudFormation(properties.name),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDBParameterGroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("description","Description",cfn_parse.FromCloudFormation.getString(properties.Description)),ret.addPropertyResult("family","Family",cfn_parse.FromCloudFormation.getString(properties.Family)),ret.addPropertyResult("parameters","Parameters",cfn_parse.FromCloudFormation.getAny(properties.Parameters)),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse.FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDBParameterGroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnDBParameterGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_neptune_CfnDBParameterGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDBParameterGroup),error}cdk.requireProperty(props,"description",this),cdk.requireProperty(props,"family",this),cdk.requireProperty(props,"parameters",this),this.description=props.description,this.family=props.family,this.parameters=props.parameters,this.name=props.name,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Neptune::DBParameterGroup",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDBParameterGroupPropsFromCloudFormation(resourceProperties),ret=new CfnDBParameterGroup(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnDBParameterGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{description:this.description,family:this.family,parameters:this.parameters,name:this.name,tags:this.tags.renderTags()}}renderProperties(props){return cfnDBParameterGroupPropsToCloudFormation(props)}}exports.CfnDBParameterGroup=CfnDBParameterGroup,_d=JSII_RTTI_SYMBOL_1,CfnDBParameterGroup[_d]={fqn:"aws-cdk-lib.aws_neptune.CfnDBParameterGroup",version:"2.70.0"},CfnDBParameterGroup.CFN_RESOURCE_TYPE_NAME="AWS::Neptune::DBParameterGroup";function CfnDBSubnetGroupPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("dbSubnetGroupDescription",cdk.requiredValidator)(properties.dbSubnetGroupDescription)),errors.collect(cdk.propertyValidator("dbSubnetGroupDescription",cdk.validateString)(properties.dbSubnetGroupDescription)),errors.collect(cdk.propertyValidator("dbSubnetGroupName",cdk.validateString)(properties.dbSubnetGroupName)),errors.collect(cdk.propertyValidator("subnetIds",cdk.requiredValidator)(properties.subnetIds)),errors.collect(cdk.propertyValidator("subnetIds",cdk.listValidator(cdk.validateString))(properties.subnetIds)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDBSubnetGroupProps"')}function cfnDBSubnetGroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDBSubnetGroupPropsValidator(properties).assertSuccess(),{DBSubnetGroupDescription:cdk.stringToCloudFormation(properties.dbSubnetGroupDescription),SubnetIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.subnetIds),DBSubnetGroupName:cdk.stringToCloudFormation(properties.dbSubnetGroupName),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDBSubnetGroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("dbSubnetGroupDescription","DBSubnetGroupDescription",cfn_parse.FromCloudFormation.getString(properties.DBSubnetGroupDescription)),ret.addPropertyResult("subnetIds","SubnetIds",cfn_parse.FromCloudFormation.getStringArray(properties.SubnetIds)),ret.addPropertyResult("dbSubnetGroupName","DBSubnetGroupName",properties.DBSubnetGroupName!=null?cfn_parse.FromCloudFormation.getString(properties.DBSubnetGroupName):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDBSubnetGroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnDBSubnetGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_neptune_CfnDBSubnetGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDBSubnetGroup),error}cdk.requireProperty(props,"dbSubnetGroupDescription",this),cdk.requireProperty(props,"subnetIds",this),this.dbSubnetGroupDescription=props.dbSubnetGroupDescription,this.subnetIds=props.subnetIds,this.dbSubnetGroupName=props.dbSubnetGroupName,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Neptune::DBSubnetGroup",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDBSubnetGroupPropsFromCloudFormation(resourceProperties),ret=new CfnDBSubnetGroup(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnDBSubnetGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{dbSubnetGroupDescription:this.dbSubnetGroupDescription,subnetIds:this.subnetIds,dbSubnetGroupName:this.dbSubnetGroupName,tags:this.tags.renderTags()}}renderProperties(props){return cfnDBSubnetGroupPropsToCloudFormation(props)}}exports.CfnDBSubnetGroup=CfnDBSubnetGroup,_e=JSII_RTTI_SYMBOL_1,CfnDBSubnetGroup[_e]={fqn:"aws-cdk-lib.aws_neptune.CfnDBSubnetGroup",version:"2.70.0"},CfnDBSubnetGroup.CFN_RESOURCE_TYPE_NAME="AWS::Neptune::DBSubnetGroup";