UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1 lines 95.7 kB
"use strict";var _a,_b,_c,_d,_e;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnVolume=exports.CfnStorageVirtualMachine=exports.CfnSnapshot=exports.CfnFileSystem=exports.CfnDataRepositoryAssociation=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 CfnDataRepositoryAssociationPropsValidator(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("batchImportMetaDataOnCreate",cdk.validateBoolean)(properties.batchImportMetaDataOnCreate)),errors.collect(cdk.propertyValidator("dataRepositoryPath",cdk.requiredValidator)(properties.dataRepositoryPath)),errors.collect(cdk.propertyValidator("dataRepositoryPath",cdk.validateString)(properties.dataRepositoryPath)),errors.collect(cdk.propertyValidator("fileSystemId",cdk.requiredValidator)(properties.fileSystemId)),errors.collect(cdk.propertyValidator("fileSystemId",cdk.validateString)(properties.fileSystemId)),errors.collect(cdk.propertyValidator("fileSystemPath",cdk.requiredValidator)(properties.fileSystemPath)),errors.collect(cdk.propertyValidator("fileSystemPath",cdk.validateString)(properties.fileSystemPath)),errors.collect(cdk.propertyValidator("importedFileChunkSize",cdk.validateNumber)(properties.importedFileChunkSize)),errors.collect(cdk.propertyValidator("s3",CfnDataRepositoryAssociation_S3PropertyValidator)(properties.s3)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDataRepositoryAssociationProps"')}function cfnDataRepositoryAssociationPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDataRepositoryAssociationPropsValidator(properties).assertSuccess(),{DataRepositoryPath:cdk.stringToCloudFormation(properties.dataRepositoryPath),FileSystemId:cdk.stringToCloudFormation(properties.fileSystemId),FileSystemPath:cdk.stringToCloudFormation(properties.fileSystemPath),BatchImportMetaDataOnCreate:cdk.booleanToCloudFormation(properties.batchImportMetaDataOnCreate),ImportedFileChunkSize:cdk.numberToCloudFormation(properties.importedFileChunkSize),S3:cfnDataRepositoryAssociationS3PropertyToCloudFormation(properties.s3),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDataRepositoryAssociationPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("dataRepositoryPath","DataRepositoryPath",cfn_parse.FromCloudFormation.getString(properties.DataRepositoryPath)),ret.addPropertyResult("fileSystemId","FileSystemId",cfn_parse.FromCloudFormation.getString(properties.FileSystemId)),ret.addPropertyResult("fileSystemPath","FileSystemPath",cfn_parse.FromCloudFormation.getString(properties.FileSystemPath)),ret.addPropertyResult("batchImportMetaDataOnCreate","BatchImportMetaDataOnCreate",properties.BatchImportMetaDataOnCreate!=null?cfn_parse.FromCloudFormation.getBoolean(properties.BatchImportMetaDataOnCreate):void 0),ret.addPropertyResult("importedFileChunkSize","ImportedFileChunkSize",properties.ImportedFileChunkSize!=null?cfn_parse.FromCloudFormation.getNumber(properties.ImportedFileChunkSize):void 0),ret.addPropertyResult("s3","S3",properties.S3!=null?CfnDataRepositoryAssociationS3PropertyFromCloudFormation(properties.S3):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 CfnDataRepositoryAssociation extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnDataRepositoryAssociation.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_fsx_CfnDataRepositoryAssociationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDataRepositoryAssociation),error}cdk.requireProperty(props,"dataRepositoryPath",this),cdk.requireProperty(props,"fileSystemId",this),cdk.requireProperty(props,"fileSystemPath",this),this.attrAssociationId=cdk.Token.asString(this.getAtt("AssociationId",cdk.ResolutionTypeHint.STRING)),this.attrResourceArn=cdk.Token.asString(this.getAtt("ResourceARN",cdk.ResolutionTypeHint.STRING)),this.dataRepositoryPath=props.dataRepositoryPath,this.fileSystemId=props.fileSystemId,this.fileSystemPath=props.fileSystemPath,this.batchImportMetaDataOnCreate=props.batchImportMetaDataOnCreate,this.importedFileChunkSize=props.importedFileChunkSize,this.s3=props.s3,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::FSx::DataRepositoryAssociation",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDataRepositoryAssociationPropsFromCloudFormation(resourceProperties),ret=new CfnDataRepositoryAssociation(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",CfnDataRepositoryAssociation.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{dataRepositoryPath:this.dataRepositoryPath,fileSystemId:this.fileSystemId,fileSystemPath:this.fileSystemPath,batchImportMetaDataOnCreate:this.batchImportMetaDataOnCreate,importedFileChunkSize:this.importedFileChunkSize,s3:this.s3,tags:this.tags.renderTags()}}renderProperties(props){return cfnDataRepositoryAssociationPropsToCloudFormation(props)}}exports.CfnDataRepositoryAssociation=CfnDataRepositoryAssociation,_a=JSII_RTTI_SYMBOL_1,CfnDataRepositoryAssociation[_a]={fqn:"aws-cdk-lib.aws_fsx.CfnDataRepositoryAssociation",version:"2.70.0"},CfnDataRepositoryAssociation.CFN_RESOURCE_TYPE_NAME="AWS::FSx::DataRepositoryAssociation";function CfnDataRepositoryAssociation_AutoExportPolicyPropertyValidator(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("events",cdk.requiredValidator)(properties.events)),errors.collect(cdk.propertyValidator("events",cdk.listValidator(cdk.validateString))(properties.events)),errors.wrap('supplied properties not correct for "AutoExportPolicyProperty"')}function cfnDataRepositoryAssociationAutoExportPolicyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDataRepositoryAssociation_AutoExportPolicyPropertyValidator(properties).assertSuccess(),{Events:cdk.listMapper(cdk.stringToCloudFormation)(properties.events)}):properties}function CfnDataRepositoryAssociationAutoExportPolicyPropertyFromCloudFormation(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("events","Events",cfn_parse.FromCloudFormation.getStringArray(properties.Events)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataRepositoryAssociation_AutoImportPolicyPropertyValidator(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("events",cdk.requiredValidator)(properties.events)),errors.collect(cdk.propertyValidator("events",cdk.listValidator(cdk.validateString))(properties.events)),errors.wrap('supplied properties not correct for "AutoImportPolicyProperty"')}function cfnDataRepositoryAssociationAutoImportPolicyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDataRepositoryAssociation_AutoImportPolicyPropertyValidator(properties).assertSuccess(),{Events:cdk.listMapper(cdk.stringToCloudFormation)(properties.events)}):properties}function CfnDataRepositoryAssociationAutoImportPolicyPropertyFromCloudFormation(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("events","Events",cfn_parse.FromCloudFormation.getStringArray(properties.Events)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDataRepositoryAssociation_S3PropertyValidator(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("autoExportPolicy",CfnDataRepositoryAssociation_AutoExportPolicyPropertyValidator)(properties.autoExportPolicy)),errors.collect(cdk.propertyValidator("autoImportPolicy",CfnDataRepositoryAssociation_AutoImportPolicyPropertyValidator)(properties.autoImportPolicy)),errors.wrap('supplied properties not correct for "S3Property"')}function cfnDataRepositoryAssociationS3PropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDataRepositoryAssociation_S3PropertyValidator(properties).assertSuccess(),{AutoExportPolicy:cfnDataRepositoryAssociationAutoExportPolicyPropertyToCloudFormation(properties.autoExportPolicy),AutoImportPolicy:cfnDataRepositoryAssociationAutoImportPolicyPropertyToCloudFormation(properties.autoImportPolicy)}):properties}function CfnDataRepositoryAssociationS3PropertyFromCloudFormation(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("autoExportPolicy","AutoExportPolicy",properties.AutoExportPolicy!=null?CfnDataRepositoryAssociationAutoExportPolicyPropertyFromCloudFormation(properties.AutoExportPolicy):void 0),ret.addPropertyResult("autoImportPolicy","AutoImportPolicy",properties.AutoImportPolicy!=null?CfnDataRepositoryAssociationAutoImportPolicyPropertyFromCloudFormation(properties.AutoImportPolicy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFileSystemPropsValidator(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("backupId",cdk.validateString)(properties.backupId)),errors.collect(cdk.propertyValidator("fileSystemType",cdk.requiredValidator)(properties.fileSystemType)),errors.collect(cdk.propertyValidator("fileSystemType",cdk.validateString)(properties.fileSystemType)),errors.collect(cdk.propertyValidator("fileSystemTypeVersion",cdk.validateString)(properties.fileSystemTypeVersion)),errors.collect(cdk.propertyValidator("kmsKeyId",cdk.validateString)(properties.kmsKeyId)),errors.collect(cdk.propertyValidator("lustreConfiguration",CfnFileSystem_LustreConfigurationPropertyValidator)(properties.lustreConfiguration)),errors.collect(cdk.propertyValidator("ontapConfiguration",CfnFileSystem_OntapConfigurationPropertyValidator)(properties.ontapConfiguration)),errors.collect(cdk.propertyValidator("openZfsConfiguration",CfnFileSystem_OpenZFSConfigurationPropertyValidator)(properties.openZfsConfiguration)),errors.collect(cdk.propertyValidator("securityGroupIds",cdk.listValidator(cdk.validateString))(properties.securityGroupIds)),errors.collect(cdk.propertyValidator("storageCapacity",cdk.validateNumber)(properties.storageCapacity)),errors.collect(cdk.propertyValidator("storageType",cdk.validateString)(properties.storageType)),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.collect(cdk.propertyValidator("windowsConfiguration",CfnFileSystem_WindowsConfigurationPropertyValidator)(properties.windowsConfiguration)),errors.wrap('supplied properties not correct for "CfnFileSystemProps"')}function cfnFileSystemPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFileSystemPropsValidator(properties).assertSuccess(),{FileSystemType:cdk.stringToCloudFormation(properties.fileSystemType),SubnetIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.subnetIds),BackupId:cdk.stringToCloudFormation(properties.backupId),FileSystemTypeVersion:cdk.stringToCloudFormation(properties.fileSystemTypeVersion),KmsKeyId:cdk.stringToCloudFormation(properties.kmsKeyId),LustreConfiguration:cfnFileSystemLustreConfigurationPropertyToCloudFormation(properties.lustreConfiguration),OntapConfiguration:cfnFileSystemOntapConfigurationPropertyToCloudFormation(properties.ontapConfiguration),OpenZFSConfiguration:cfnFileSystemOpenZFSConfigurationPropertyToCloudFormation(properties.openZfsConfiguration),SecurityGroupIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.securityGroupIds),StorageCapacity:cdk.numberToCloudFormation(properties.storageCapacity),StorageType:cdk.stringToCloudFormation(properties.storageType),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags),WindowsConfiguration:cfnFileSystemWindowsConfigurationPropertyToCloudFormation(properties.windowsConfiguration)}):properties}function CfnFileSystemPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fileSystemType","FileSystemType",cfn_parse.FromCloudFormation.getString(properties.FileSystemType)),ret.addPropertyResult("subnetIds","SubnetIds",cfn_parse.FromCloudFormation.getStringArray(properties.SubnetIds)),ret.addPropertyResult("backupId","BackupId",properties.BackupId!=null?cfn_parse.FromCloudFormation.getString(properties.BackupId):void 0),ret.addPropertyResult("fileSystemTypeVersion","FileSystemTypeVersion",properties.FileSystemTypeVersion!=null?cfn_parse.FromCloudFormation.getString(properties.FileSystemTypeVersion):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse.FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("lustreConfiguration","LustreConfiguration",properties.LustreConfiguration!=null?CfnFileSystemLustreConfigurationPropertyFromCloudFormation(properties.LustreConfiguration):void 0),ret.addPropertyResult("ontapConfiguration","OntapConfiguration",properties.OntapConfiguration!=null?CfnFileSystemOntapConfigurationPropertyFromCloudFormation(properties.OntapConfiguration):void 0),ret.addPropertyResult("openZfsConfiguration","OpenZFSConfiguration",properties.OpenZFSConfiguration!=null?CfnFileSystemOpenZFSConfigurationPropertyFromCloudFormation(properties.OpenZFSConfiguration):void 0),ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.SecurityGroupIds):void 0),ret.addPropertyResult("storageCapacity","StorageCapacity",properties.StorageCapacity!=null?cfn_parse.FromCloudFormation.getNumber(properties.StorageCapacity):void 0),ret.addPropertyResult("storageType","StorageType",properties.StorageType!=null?cfn_parse.FromCloudFormation.getString(properties.StorageType):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("windowsConfiguration","WindowsConfiguration",properties.WindowsConfiguration!=null?CfnFileSystemWindowsConfigurationPropertyFromCloudFormation(properties.WindowsConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnFileSystem extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnFileSystem.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_fsx_CfnFileSystemProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnFileSystem),error}cdk.requireProperty(props,"fileSystemType",this),cdk.requireProperty(props,"subnetIds",this),this.attrDnsName=cdk.Token.asString(this.getAtt("DNSName",cdk.ResolutionTypeHint.STRING)),this.attrLustreMountName=cdk.Token.asString(this.getAtt("LustreMountName",cdk.ResolutionTypeHint.STRING)),this.attrResourceArn=cdk.Token.asString(this.getAtt("ResourceARN",cdk.ResolutionTypeHint.STRING)),this.attrRootVolumeId=cdk.Token.asString(this.getAtt("RootVolumeId",cdk.ResolutionTypeHint.STRING)),this.fileSystemType=props.fileSystemType,this.subnetIds=props.subnetIds,this.backupId=props.backupId,this.fileSystemTypeVersion=props.fileSystemTypeVersion,this.kmsKeyId=props.kmsKeyId,this.lustreConfiguration=props.lustreConfiguration,this.ontapConfiguration=props.ontapConfiguration,this.openZfsConfiguration=props.openZfsConfiguration,this.securityGroupIds=props.securityGroupIds,this.storageCapacity=props.storageCapacity,this.storageType=props.storageType,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::FSx::FileSystem",props.tags,{tagPropertyName:"tags"}),this.windowsConfiguration=props.windowsConfiguration,this.node.scope&&cdk.Resource.isResource(this.node.scope)&&this.node.addValidation({validate:()=>this.cfnOptions.deletionPolicy===void 0?["'AWS::FSx::FileSystem' 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=CfnFileSystemPropsFromCloudFormation(resourceProperties),ret=new CfnFileSystem(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",CfnFileSystem.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{fileSystemType:this.fileSystemType,subnetIds:this.subnetIds,backupId:this.backupId,fileSystemTypeVersion:this.fileSystemTypeVersion,kmsKeyId:this.kmsKeyId,lustreConfiguration:this.lustreConfiguration,ontapConfiguration:this.ontapConfiguration,openZfsConfiguration:this.openZfsConfiguration,securityGroupIds:this.securityGroupIds,storageCapacity:this.storageCapacity,storageType:this.storageType,tags:this.tags.renderTags(),windowsConfiguration:this.windowsConfiguration}}renderProperties(props){return cfnFileSystemPropsToCloudFormation(props)}}exports.CfnFileSystem=CfnFileSystem,_b=JSII_RTTI_SYMBOL_1,CfnFileSystem[_b]={fqn:"aws-cdk-lib.aws_fsx.CfnFileSystem",version:"2.70.0"},CfnFileSystem.CFN_RESOURCE_TYPE_NAME="AWS::FSx::FileSystem";function CfnFileSystem_AuditLogConfigurationPropertyValidator(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("auditLogDestination",cdk.validateString)(properties.auditLogDestination)),errors.collect(cdk.propertyValidator("fileAccessAuditLogLevel",cdk.requiredValidator)(properties.fileAccessAuditLogLevel)),errors.collect(cdk.propertyValidator("fileAccessAuditLogLevel",cdk.validateString)(properties.fileAccessAuditLogLevel)),errors.collect(cdk.propertyValidator("fileShareAccessAuditLogLevel",cdk.requiredValidator)(properties.fileShareAccessAuditLogLevel)),errors.collect(cdk.propertyValidator("fileShareAccessAuditLogLevel",cdk.validateString)(properties.fileShareAccessAuditLogLevel)),errors.wrap('supplied properties not correct for "AuditLogConfigurationProperty"')}function cfnFileSystemAuditLogConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFileSystem_AuditLogConfigurationPropertyValidator(properties).assertSuccess(),{AuditLogDestination:cdk.stringToCloudFormation(properties.auditLogDestination),FileAccessAuditLogLevel:cdk.stringToCloudFormation(properties.fileAccessAuditLogLevel),FileShareAccessAuditLogLevel:cdk.stringToCloudFormation(properties.fileShareAccessAuditLogLevel)}):properties}function CfnFileSystemAuditLogConfigurationPropertyFromCloudFormation(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("auditLogDestination","AuditLogDestination",properties.AuditLogDestination!=null?cfn_parse.FromCloudFormation.getString(properties.AuditLogDestination):void 0),ret.addPropertyResult("fileAccessAuditLogLevel","FileAccessAuditLogLevel",cfn_parse.FromCloudFormation.getString(properties.FileAccessAuditLogLevel)),ret.addPropertyResult("fileShareAccessAuditLogLevel","FileShareAccessAuditLogLevel",cfn_parse.FromCloudFormation.getString(properties.FileShareAccessAuditLogLevel)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFileSystem_ClientConfigurationsPropertyValidator(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("clients",cdk.validateString)(properties.clients)),errors.collect(cdk.propertyValidator("options",cdk.listValidator(cdk.validateString))(properties.options)),errors.wrap('supplied properties not correct for "ClientConfigurationsProperty"')}function cfnFileSystemClientConfigurationsPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFileSystem_ClientConfigurationsPropertyValidator(properties).assertSuccess(),{Clients:cdk.stringToCloudFormation(properties.clients),Options:cdk.listMapper(cdk.stringToCloudFormation)(properties.options)}):properties}function CfnFileSystemClientConfigurationsPropertyFromCloudFormation(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("clients","Clients",properties.Clients!=null?cfn_parse.FromCloudFormation.getString(properties.Clients):void 0),ret.addPropertyResult("options","Options",properties.Options!=null?cfn_parse.FromCloudFormation.getStringArray(properties.Options):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFileSystem_DiskIopsConfigurationPropertyValidator(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("iops",cdk.validateNumber)(properties.iops)),errors.collect(cdk.propertyValidator("mode",cdk.validateString)(properties.mode)),errors.wrap('supplied properties not correct for "DiskIopsConfigurationProperty"')}function cfnFileSystemDiskIopsConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFileSystem_DiskIopsConfigurationPropertyValidator(properties).assertSuccess(),{Iops:cdk.numberToCloudFormation(properties.iops),Mode:cdk.stringToCloudFormation(properties.mode)}):properties}function CfnFileSystemDiskIopsConfigurationPropertyFromCloudFormation(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("iops","Iops",properties.Iops!=null?cfn_parse.FromCloudFormation.getNumber(properties.Iops):void 0),ret.addPropertyResult("mode","Mode",properties.Mode!=null?cfn_parse.FromCloudFormation.getString(properties.Mode):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFileSystem_LustreConfigurationPropertyValidator(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("autoImportPolicy",cdk.validateString)(properties.autoImportPolicy)),errors.collect(cdk.propertyValidator("automaticBackupRetentionDays",cdk.validateNumber)(properties.automaticBackupRetentionDays)),errors.collect(cdk.propertyValidator("copyTagsToBackups",cdk.validateBoolean)(properties.copyTagsToBackups)),errors.collect(cdk.propertyValidator("dailyAutomaticBackupStartTime",cdk.validateString)(properties.dailyAutomaticBackupStartTime)),errors.collect(cdk.propertyValidator("dataCompressionType",cdk.validateString)(properties.dataCompressionType)),errors.collect(cdk.propertyValidator("deploymentType",cdk.validateString)(properties.deploymentType)),errors.collect(cdk.propertyValidator("driveCacheType",cdk.validateString)(properties.driveCacheType)),errors.collect(cdk.propertyValidator("exportPath",cdk.validateString)(properties.exportPath)),errors.collect(cdk.propertyValidator("importPath",cdk.validateString)(properties.importPath)),errors.collect(cdk.propertyValidator("importedFileChunkSize",cdk.validateNumber)(properties.importedFileChunkSize)),errors.collect(cdk.propertyValidator("perUnitStorageThroughput",cdk.validateNumber)(properties.perUnitStorageThroughput)),errors.collect(cdk.propertyValidator("weeklyMaintenanceStartTime",cdk.validateString)(properties.weeklyMaintenanceStartTime)),errors.wrap('supplied properties not correct for "LustreConfigurationProperty"')}function cfnFileSystemLustreConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFileSystem_LustreConfigurationPropertyValidator(properties).assertSuccess(),{AutoImportPolicy:cdk.stringToCloudFormation(properties.autoImportPolicy),AutomaticBackupRetentionDays:cdk.numberToCloudFormation(properties.automaticBackupRetentionDays),CopyTagsToBackups:cdk.booleanToCloudFormation(properties.copyTagsToBackups),DailyAutomaticBackupStartTime:cdk.stringToCloudFormation(properties.dailyAutomaticBackupStartTime),DataCompressionType:cdk.stringToCloudFormation(properties.dataCompressionType),DeploymentType:cdk.stringToCloudFormation(properties.deploymentType),DriveCacheType:cdk.stringToCloudFormation(properties.driveCacheType),ExportPath:cdk.stringToCloudFormation(properties.exportPath),ImportPath:cdk.stringToCloudFormation(properties.importPath),ImportedFileChunkSize:cdk.numberToCloudFormation(properties.importedFileChunkSize),PerUnitStorageThroughput:cdk.numberToCloudFormation(properties.perUnitStorageThroughput),WeeklyMaintenanceStartTime:cdk.stringToCloudFormation(properties.weeklyMaintenanceStartTime)}):properties}function CfnFileSystemLustreConfigurationPropertyFromCloudFormation(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("autoImportPolicy","AutoImportPolicy",properties.AutoImportPolicy!=null?cfn_parse.FromCloudFormation.getString(properties.AutoImportPolicy):void 0),ret.addPropertyResult("automaticBackupRetentionDays","AutomaticBackupRetentionDays",properties.AutomaticBackupRetentionDays!=null?cfn_parse.FromCloudFormation.getNumber(properties.AutomaticBackupRetentionDays):void 0),ret.addPropertyResult("copyTagsToBackups","CopyTagsToBackups",properties.CopyTagsToBackups!=null?cfn_parse.FromCloudFormation.getBoolean(properties.CopyTagsToBackups):void 0),ret.addPropertyResult("dailyAutomaticBackupStartTime","DailyAutomaticBackupStartTime",properties.DailyAutomaticBackupStartTime!=null?cfn_parse.FromCloudFormation.getString(properties.DailyAutomaticBackupStartTime):void 0),ret.addPropertyResult("dataCompressionType","DataCompressionType",properties.DataCompressionType!=null?cfn_parse.FromCloudFormation.getString(properties.DataCompressionType):void 0),ret.addPropertyResult("deploymentType","DeploymentType",properties.DeploymentType!=null?cfn_parse.FromCloudFormation.getString(properties.DeploymentType):void 0),ret.addPropertyResult("driveCacheType","DriveCacheType",properties.DriveCacheType!=null?cfn_parse.FromCloudFormation.getString(properties.DriveCacheType):void 0),ret.addPropertyResult("exportPath","ExportPath",properties.ExportPath!=null?cfn_parse.FromCloudFormation.getString(properties.ExportPath):void 0),ret.addPropertyResult("importPath","ImportPath",properties.ImportPath!=null?cfn_parse.FromCloudFormation.getString(properties.ImportPath):void 0),ret.addPropertyResult("importedFileChunkSize","ImportedFileChunkSize",properties.ImportedFileChunkSize!=null?cfn_parse.FromCloudFormation.getNumber(properties.ImportedFileChunkSize):void 0),ret.addPropertyResult("perUnitStorageThroughput","PerUnitStorageThroughput",properties.PerUnitStorageThroughput!=null?cfn_parse.FromCloudFormation.getNumber(properties.PerUnitStorageThroughput):void 0),ret.addPropertyResult("weeklyMaintenanceStartTime","WeeklyMaintenanceStartTime",properties.WeeklyMaintenanceStartTime!=null?cfn_parse.FromCloudFormation.getString(properties.WeeklyMaintenanceStartTime):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFileSystem_NfsExportsPropertyValidator(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("clientConfigurations",cdk.listValidator(CfnFileSystem_ClientConfigurationsPropertyValidator))(properties.clientConfigurations)),errors.wrap('supplied properties not correct for "NfsExportsProperty"')}function cfnFileSystemNfsExportsPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFileSystem_NfsExportsPropertyValidator(properties).assertSuccess(),{ClientConfigurations:cdk.listMapper(cfnFileSystemClientConfigurationsPropertyToCloudFormation)(properties.clientConfigurations)}):properties}function CfnFileSystemNfsExportsPropertyFromCloudFormation(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("clientConfigurations","ClientConfigurations",properties.ClientConfigurations!=null?cfn_parse.FromCloudFormation.getArray(CfnFileSystemClientConfigurationsPropertyFromCloudFormation)(properties.ClientConfigurations):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFileSystem_OntapConfigurationPropertyValidator(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("automaticBackupRetentionDays",cdk.validateNumber)(properties.automaticBackupRetentionDays)),errors.collect(cdk.propertyValidator("dailyAutomaticBackupStartTime",cdk.validateString)(properties.dailyAutomaticBackupStartTime)),errors.collect(cdk.propertyValidator("deploymentType",cdk.requiredValidator)(properties.deploymentType)),errors.collect(cdk.propertyValidator("deploymentType",cdk.validateString)(properties.deploymentType)),errors.collect(cdk.propertyValidator("diskIopsConfiguration",CfnFileSystem_DiskIopsConfigurationPropertyValidator)(properties.diskIopsConfiguration)),errors.collect(cdk.propertyValidator("endpointIpAddressRange",cdk.validateString)(properties.endpointIpAddressRange)),errors.collect(cdk.propertyValidator("fsxAdminPassword",cdk.validateString)(properties.fsxAdminPassword)),errors.collect(cdk.propertyValidator("preferredSubnetId",cdk.validateString)(properties.preferredSubnetId)),errors.collect(cdk.propertyValidator("routeTableIds",cdk.listValidator(cdk.validateString))(properties.routeTableIds)),errors.collect(cdk.propertyValidator("throughputCapacity",cdk.validateNumber)(properties.throughputCapacity)),errors.collect(cdk.propertyValidator("weeklyMaintenanceStartTime",cdk.validateString)(properties.weeklyMaintenanceStartTime)),errors.wrap('supplied properties not correct for "OntapConfigurationProperty"')}function cfnFileSystemOntapConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFileSystem_OntapConfigurationPropertyValidator(properties).assertSuccess(),{AutomaticBackupRetentionDays:cdk.numberToCloudFormation(properties.automaticBackupRetentionDays),DailyAutomaticBackupStartTime:cdk.stringToCloudFormation(properties.dailyAutomaticBackupStartTime),DeploymentType:cdk.stringToCloudFormation(properties.deploymentType),DiskIopsConfiguration:cfnFileSystemDiskIopsConfigurationPropertyToCloudFormation(properties.diskIopsConfiguration),EndpointIpAddressRange:cdk.stringToCloudFormation(properties.endpointIpAddressRange),FsxAdminPassword:cdk.stringToCloudFormation(properties.fsxAdminPassword),PreferredSubnetId:cdk.stringToCloudFormation(properties.preferredSubnetId),RouteTableIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.routeTableIds),ThroughputCapacity:cdk.numberToCloudFormation(properties.throughputCapacity),WeeklyMaintenanceStartTime:cdk.stringToCloudFormation(properties.weeklyMaintenanceStartTime)}):properties}function CfnFileSystemOntapConfigurationPropertyFromCloudFormation(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("automaticBackupRetentionDays","AutomaticBackupRetentionDays",properties.AutomaticBackupRetentionDays!=null?cfn_parse.FromCloudFormation.getNumber(properties.AutomaticBackupRetentionDays):void 0),ret.addPropertyResult("dailyAutomaticBackupStartTime","DailyAutomaticBackupStartTime",properties.DailyAutomaticBackupStartTime!=null?cfn_parse.FromCloudFormation.getString(properties.DailyAutomaticBackupStartTime):void 0),ret.addPropertyResult("deploymentType","DeploymentType",cfn_parse.FromCloudFormation.getString(properties.DeploymentType)),ret.addPropertyResult("diskIopsConfiguration","DiskIopsConfiguration",properties.DiskIopsConfiguration!=null?CfnFileSystemDiskIopsConfigurationPropertyFromCloudFormation(properties.DiskIopsConfiguration):void 0),ret.addPropertyResult("endpointIpAddressRange","EndpointIpAddressRange",properties.EndpointIpAddressRange!=null?cfn_parse.FromCloudFormation.getString(properties.EndpointIpAddressRange):void 0),ret.addPropertyResult("fsxAdminPassword","FsxAdminPassword",properties.FsxAdminPassword!=null?cfn_parse.FromCloudFormation.getString(properties.FsxAdminPassword):void 0),ret.addPropertyResult("preferredSubnetId","PreferredSubnetId",properties.PreferredSubnetId!=null?cfn_parse.FromCloudFormation.getString(properties.PreferredSubnetId):void 0),ret.addPropertyResult("routeTableIds","RouteTableIds",properties.RouteTableIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.RouteTableIds):void 0),ret.addPropertyResult("throughputCapacity","ThroughputCapacity",properties.ThroughputCapacity!=null?cfn_parse.FromCloudFormation.getNumber(properties.ThroughputCapacity):void 0),ret.addPropertyResult("weeklyMaintenanceStartTime","WeeklyMaintenanceStartTime",properties.WeeklyMaintenanceStartTime!=null?cfn_parse.FromCloudFormation.getString(properties.WeeklyMaintenanceStartTime):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFileSystem_OpenZFSConfigurationPropertyValidator(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("automaticBackupRetentionDays",cdk.validateNumber)(properties.automaticBackupRetentionDays)),errors.collect(cdk.propertyValidator("copyTagsToBackups",cdk.validateBoolean)(properties.copyTagsToBackups)),errors.collect(cdk.propertyValidator("copyTagsToVolumes",cdk.validateBoolean)(properties.copyTagsToVolumes)),errors.collect(cdk.propertyValidator("dailyAutomaticBackupStartTime",cdk.validateString)(properties.dailyAutomaticBackupStartTime)),errors.collect(cdk.propertyValidator("deploymentType",cdk.requiredValidator)(properties.deploymentType)),errors.collect(cdk.propertyValidator("deploymentType",cdk.validateString)(properties.deploymentType)),errors.collect(cdk.propertyValidator("diskIopsConfiguration",CfnFileSystem_DiskIopsConfigurationPropertyValidator)(properties.diskIopsConfiguration)),errors.collect(cdk.propertyValidator("options",cdk.listValidator(cdk.validateString))(properties.options)),errors.collect(cdk.propertyValidator("rootVolumeConfiguration",CfnFileSystem_RootVolumeConfigurationPropertyValidator)(properties.rootVolumeConfiguration)),errors.collect(cdk.propertyValidator("throughputCapacity",cdk.validateNumber)(properties.throughputCapacity)),errors.collect(cdk.propertyValidator("weeklyMaintenanceStartTime",cdk.validateString)(properties.weeklyMaintenanceStartTime)),errors.wrap('supplied properties not correct for "OpenZFSConfigurationProperty"')}function cfnFileSystemOpenZFSConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFileSystem_OpenZFSConfigurationPropertyValidator(properties).assertSuccess(),{AutomaticBackupRetentionDays:cdk.numberToCloudFormation(properties.automaticBackupRetentionDays),CopyTagsToBackups:cdk.booleanToCloudFormation(properties.copyTagsToBackups),CopyTagsToVolumes:cdk.booleanToCloudFormation(properties.copyTagsToVolumes),DailyAutomaticBackupStartTime:cdk.stringToCloudFormation(properties.dailyAutomaticBackupStartTime),DeploymentType:cdk.stringToCloudFormation(properties.deploymentType),DiskIopsConfiguration:cfnFileSystemDiskIopsConfigurationPropertyToCloudFormation(properties.diskIopsConfiguration),Options:cdk.listMapper(cdk.stringToCloudFormation)(properties.options),RootVolumeConfiguration:cfnFileSystemRootVolumeConfigurationPropertyToCloudFormation(properties.rootVolumeConfiguration),ThroughputCapacity:cdk.numberToCloudFormation(properties.throughputCapacity),WeeklyMaintenanceStartTime:cdk.stringToCloudFormation(properties.weeklyMaintenanceStartTime)}):properties}function CfnFileSystemOpenZFSConfigurationPropertyFromCloudFormation(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("automaticBackupRetentionDays","AutomaticBackupRetentionDays",properties.AutomaticBackupRetentionDays!=null?cfn_parse.FromCloudFormation.getNumber(properties.AutomaticBackupRetentionDays):void 0),ret.addPropertyResult("copyTagsToBackups","CopyTagsToBackups",properties.CopyTagsToBackups!=null?cfn_parse.FromCloudFormation.getBoolean(properties.CopyTagsToBackups):void 0),ret.addPropertyResult("copyTagsToVolumes","CopyTagsToVolumes",properties.CopyTagsToVolumes!=null?cfn_parse.FromCloudFormation.getBoolean(properties.CopyTagsToVolumes):void 0),ret.addPropertyResult("dailyAutomaticBackupStartTime","DailyAutomaticBackupStartTime",properties.DailyAutomaticBackupStartTime!=null?cfn_parse.FromCloudFormation.getString(properties.DailyAutomaticBackupStartTime):void 0),ret.addPropertyResult("deploymentType","DeploymentType",cfn_parse.FromCloudFormation.getString(properties.DeploymentType)),ret.addPropertyResult("diskIopsConfiguration","DiskIopsConfiguration",properties.DiskIopsConfiguration!=null?CfnFileSystemDiskIopsConfigurationPropertyFromCloudFormation(properties.DiskIopsConfiguration):void 0),ret.addPropertyResult("options","Options",properties.Options!=null?cfn_parse.FromCloudFormation.getStringArray(properties.Options):void 0),ret.addPropertyResult("rootVolumeConfiguration","RootVolumeConfiguration",properties.RootVolumeConfiguration!=null?CfnFileSystemRootVolumeConfigurationPropertyFromCloudFormation(properties.RootVolumeConfiguration):void 0),ret.addPropertyResult("throughputCapacity","ThroughputCapacity",properties.ThroughputCapacity!=null?cfn_parse.FromCloudFormation.getNumber(properties.ThroughputCapacity):void 0),ret.addPropertyResult("weeklyMaintenanceStartTime","WeeklyMaintenanceStartTime",properties.WeeklyMaintenanceStartTime!=null?cfn_parse.FromCloudFormation.getString(properties.WeeklyMaintenanceStartTime):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFileSystem_RootVolumeConfigurationPropertyValidator(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("copyTagsToSnapshots",cdk.validateBoolean)(properties.copyTagsToSnapshots)),errors.collect(cdk.propertyValidator("dataCompressionType",cdk.validateString)(properties.dataCompressionType)),errors.collect(cdk.propertyValidator("nfsExports",cdk.listValidator(CfnFileSystem_NfsExportsPropertyValidator))(properties.nfsExports)),errors.collect(cdk.propertyValidator("readOnly",cdk.validateBoolean)(properties.readOnly)),errors.collect(cdk.propertyValidator("recordSizeKiB",cdk.validateNumber)(properties.recordSizeKiB)),errors.collect(cdk.propertyValidator("userAndGroupQuotas",cdk.listValidator(CfnFileSystem_UserAndGroupQuotasPropertyValidator))(properties.userAndGroupQuotas)),errors.wrap('supplied properties not correct for "RootVolumeConfigurationProperty"')}function cfnFileSystemRootVolumeConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFileSystem_RootVolumeConfigurationPropertyValidator(properties).assertSuccess(),{CopyTagsToSnapshots:cdk.booleanToCloudFormation(properties.copyTagsToSnapshots),DataCompressionType:cdk.stringToCloudFormation(properties.dataCompressionType),NfsExports:cdk.listMapper(cfnFileSystemNfsExportsPropertyToCloudFormation)(properties.nfsExports),ReadOnly:cdk.booleanToCloudFormation(properties.readOnly),RecordSizeKiB:cdk.numberToCloudFormation(properties.recordSizeKiB),UserAndGroupQuotas:cdk.listMapper(cfnFileSystemUserAndGroupQuotasPropertyToCloudFormation)(properties.userAndGroupQuotas)}):properties}function CfnFileSystemRootVolumeConfigurationPropertyFromCloudFormation(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("copyTagsToSnapshots","CopyTagsToSnapshots",properties.CopyTagsToSnapshots!=null?cfn_parse.FromCloudFormation.getBoolean(properties.CopyTagsToSnapshots):void 0),ret.addPropertyResult("dataCompressionType","DataCompressionType",properties.DataCompressionType!=null?cfn_parse.FromCloudFormation.getString(properties.DataCompressionType):void 0),ret.addPropertyResult("nfsExports","NfsExports",properties.NfsExports!=null?cfn_parse.FromCloudFormation.getArray(CfnFileSystemNfsExportsPropertyFromCloudFormation)(properties.NfsExports):void 0),ret.addPropertyResult("readOnly","ReadOnly",properties.ReadOnly!=null?cfn_parse.FromCloudFormation.getBoolean(properties.ReadOnly):void 0),ret.addPropertyResult("recordSizeKiB","RecordSizeKiB",properties.RecordSizeKiB!=null?cfn_parse.FromCloudFormation.getNumber(properties.RecordSizeKiB):void 0),ret.addPropertyResult("userAndGroupQuotas","UserAndGroupQuotas",properties.UserAndGroupQuotas!=null?cfn_parse.FromCloudFormation.getArray(CfnFileSystemUserAndGroupQuotasPropertyFromCloudFormation)(properties.UserAndGroupQuotas):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFileSystem_SelfManagedActiveDirectoryConfigurationPropertyValidator(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("dnsIps",cdk.listValidator(cdk.validateString))(properties.dnsIps)),errors.collect(cdk.propertyValidator("domainName",cdk.validateString)(properties.domainName)),errors.collect(cdk.propertyValidator("fileSystemAdministratorsGroup",cdk.validateString)(properties.fileSystemAdministratorsGroup)),errors.collect(cdk.propertyValidator("organizationalUnitDistinguishedName",cdk.validateString)(properties.organizationalUnitDistinguishedName)),errors.collect(cdk.propertyValidator("password",cdk.validateString)(properties.password)),errors.collect(cdk.propertyValidator("userName",cdk.validateString)(properties.userName)),errors.wrap('supplied properties not correct for "SelfManagedActiveDirectoryConfigurationProperty"')}function cfnFileSystemSelfManagedActiveDirectoryConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnFileSystem_SelfManagedActiveDirectoryConfigurationPropertyValidator(properties).assertSuccess(),{DnsIps:cdk.listMapper(cdk.stringToCloudFormation)(properties.dnsIps),DomainName:cdk.stringToCloudFormation(properties.domainName),FileSystemAdministratorsGroup:cdk.stringToCloudFormation(properties.fileSystemAdministratorsGroup),OrganizationalUnitDistinguishedName:cdk.stringToCloudFormation(properties.organizationalUnitDistinguishedName),Password:cdk.stringToCloudFormation(properties.password),UserName:cdk.stringToCloudFormation(properties.userName)}):properties}function CfnFileSystemSelfManagedActiveDirectoryConfigurationPropertyFromCloudFormation(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("dnsIps","DnsIps",properties.DnsIps!=null?cfn_parse.FromCloudFormation.getStringArray(properties.DnsIps):void 0),ret.addPropertyResult("domainName","DomainName",properties.DomainName!=null?cfn_parse.FromCloudFormation.getString(properties.DomainName):void 0),ret.addPropertyResult("fileSystemAdministratorsGroup","FileSystemAdministratorsGroup",properties.FileSystemAdministratorsGroup!=null?cfn_parse.FromCloudFormation.getString(properties.FileSystemAdministratorsGroup):void 0),ret.addPropertyResult("organizationalUnitDistinguishedName","OrganizationalUnitDistinguishedName",properties.OrganizationalUnitDistinguishedName!=null?cfn_parse.FromCloudFormation.getString(properties.OrganizationalUnitDistinguishedName):void 0),ret.addPropertyResult("password","Password",properties.Password!=null?cfn_parse.FromCloudFormation.getString(properties.Password):void 0),ret.addPropertyResult("userName","UserName",properties.UserName!=null?cfn_parse.FromCloudFormation.getString(properties.UserName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnFileSystem_UserAndGroupQuotasPropertyValidator(properties){if(!cdk.canInspect(properties))return c