aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
2 lines (1 loc) • 30.8 kB
JavaScript
"use strict";var _a,_b,_c;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnWorkspacesPool=exports.CfnWorkspace=exports.CfnConnectionAlias=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");var cdk=()=>{var tmp=require("../../core");return cdk=()=>tmp,tmp},cfn_parse=()=>{var tmp=require("../../core/lib/helpers-internal");return cfn_parse=()=>tmp,tmp},cdk_errors=()=>{var tmp=require("../../core/lib/errors");return cdk_errors=()=>tmp,tmp};class CfnConnectionAlias extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnConnectionAliasPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnConnectionAlias(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}constructor(scope,id,props){super(scope,id,{type:CfnConnectionAlias.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_workspaces_CfnConnectionAliasProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnConnectionAlias),error}cdk().requireProperty(props,"connectionString",this),this.attrAliasId=cdk().Token.asString(this.getAtt("AliasId",cdk().ResolutionTypeHint.STRING)),this.attrAssociations=this.getAtt("Associations"),this.attrConnectionAliasState=cdk().Token.asString(this.getAtt("ConnectionAliasState",cdk().ResolutionTypeHint.STRING)),this.connectionString=props.connectionString,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::WorkSpaces::ConnectionAlias",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags}get cfnProperties(){return{connectionString:this.connectionString,tags:this.tags.renderTags()}}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",CfnConnectionAlias.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnConnectionAliasPropsToCloudFormation(props)}}exports.CfnConnectionAlias=CfnConnectionAlias,_a=JSII_RTTI_SYMBOL_1,CfnConnectionAlias[_a]={fqn:"aws-cdk-lib.aws_workspaces.CfnConnectionAlias",version:"2.202.0"},CfnConnectionAlias.CFN_RESOURCE_TYPE_NAME="AWS::WorkSpaces::ConnectionAlias";function CfnConnectionAliasConnectionAliasAssociationPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("associatedAccountId",cdk().validateString)(properties.associatedAccountId)),errors.collect(cdk().propertyValidator("associationStatus",cdk().validateString)(properties.associationStatus)),errors.collect(cdk().propertyValidator("connectionIdentifier",cdk().validateString)(properties.connectionIdentifier)),errors.collect(cdk().propertyValidator("resourceId",cdk().validateString)(properties.resourceId)),errors.wrap('supplied properties not correct for "ConnectionAliasAssociationProperty"')}function convertCfnConnectionAliasConnectionAliasAssociationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectionAliasConnectionAliasAssociationPropertyValidator(properties).assertSuccess(),{AssociatedAccountId:cdk().stringToCloudFormation(properties.associatedAccountId),AssociationStatus:cdk().stringToCloudFormation(properties.associationStatus),ConnectionIdentifier:cdk().stringToCloudFormation(properties.connectionIdentifier),ResourceId:cdk().stringToCloudFormation(properties.resourceId)}):properties}function CfnConnectionAliasConnectionAliasAssociationPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("associatedAccountId","AssociatedAccountId",properties.AssociatedAccountId!=null?cfn_parse().FromCloudFormation.getString(properties.AssociatedAccountId):void 0),ret.addPropertyResult("associationStatus","AssociationStatus",properties.AssociationStatus!=null?cfn_parse().FromCloudFormation.getString(properties.AssociationStatus):void 0),ret.addPropertyResult("connectionIdentifier","ConnectionIdentifier",properties.ConnectionIdentifier!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectionIdentifier):void 0),ret.addPropertyResult("resourceId","ResourceId",properties.ResourceId!=null?cfn_parse().FromCloudFormation.getString(properties.ResourceId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnConnectionAliasPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("connectionString",cdk().requiredValidator)(properties.connectionString)),errors.collect(cdk().propertyValidator("connectionString",cdk().validateString)(properties.connectionString)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnConnectionAliasProps"')}function convertCfnConnectionAliasPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnConnectionAliasPropsValidator(properties).assertSuccess(),{ConnectionString:cdk().stringToCloudFormation(properties.connectionString),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnConnectionAliasPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("connectionString","ConnectionString",properties.ConnectionString!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectionString):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 CfnWorkspace extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnWorkspacePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnWorkspace(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}constructor(scope,id,props){super(scope,id,{type:CfnWorkspace.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_workspaces_CfnWorkspaceProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnWorkspace),error}cdk().requireProperty(props,"bundleId",this),cdk().requireProperty(props,"directoryId",this),cdk().requireProperty(props,"userName",this),this.attrId=cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING)),this.bundleId=props.bundleId,this.directoryId=props.directoryId,this.rootVolumeEncryptionEnabled=props.rootVolumeEncryptionEnabled,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::WorkSpaces::Workspace",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags,this.userName=props.userName,this.userVolumeEncryptionEnabled=props.userVolumeEncryptionEnabled,this.volumeEncryptionKey=props.volumeEncryptionKey,this.workspaceProperties=props.workspaceProperties}get cfnProperties(){return{bundleId:this.bundleId,directoryId:this.directoryId,rootVolumeEncryptionEnabled:this.rootVolumeEncryptionEnabled,tags:this.tags.renderTags(),userName:this.userName,userVolumeEncryptionEnabled:this.userVolumeEncryptionEnabled,volumeEncryptionKey:this.volumeEncryptionKey,workspaceProperties:this.workspaceProperties}}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",CfnWorkspace.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnWorkspacePropsToCloudFormation(props)}}exports.CfnWorkspace=CfnWorkspace,_b=JSII_RTTI_SYMBOL_1,CfnWorkspace[_b]={fqn:"aws-cdk-lib.aws_workspaces.CfnWorkspace",version:"2.202.0"},CfnWorkspace.CFN_RESOURCE_TYPE_NAME="AWS::WorkSpaces::Workspace";function CfnWorkspaceWorkspacePropertiesPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("computeTypeName",cdk().validateString)(properties.computeTypeName)),errors.collect(cdk().propertyValidator("rootVolumeSizeGib",cdk().validateNumber)(properties.rootVolumeSizeGib)),errors.collect(cdk().propertyValidator("runningMode",cdk().validateString)(properties.runningMode)),errors.collect(cdk().propertyValidator("runningModeAutoStopTimeoutInMinutes",cdk().validateNumber)(properties.runningModeAutoStopTimeoutInMinutes)),errors.collect(cdk().propertyValidator("userVolumeSizeGib",cdk().validateNumber)(properties.userVolumeSizeGib)),errors.wrap('supplied properties not correct for "WorkspacePropertiesProperty"')}function convertCfnWorkspaceWorkspacePropertiesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnWorkspaceWorkspacePropertiesPropertyValidator(properties).assertSuccess(),{ComputeTypeName:cdk().stringToCloudFormation(properties.computeTypeName),RootVolumeSizeGib:cdk().numberToCloudFormation(properties.rootVolumeSizeGib),RunningMode:cdk().stringToCloudFormation(properties.runningMode),RunningModeAutoStopTimeoutInMinutes:cdk().numberToCloudFormation(properties.runningModeAutoStopTimeoutInMinutes),UserVolumeSizeGib:cdk().numberToCloudFormation(properties.userVolumeSizeGib)}):properties}function CfnWorkspaceWorkspacePropertiesPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("computeTypeName","ComputeTypeName",properties.ComputeTypeName!=null?cfn_parse().FromCloudFormation.getString(properties.ComputeTypeName):void 0),ret.addPropertyResult("rootVolumeSizeGib","RootVolumeSizeGib",properties.RootVolumeSizeGib!=null?cfn_parse().FromCloudFormation.getNumber(properties.RootVolumeSizeGib):void 0),ret.addPropertyResult("runningMode","RunningMode",properties.RunningMode!=null?cfn_parse().FromCloudFormation.getString(properties.RunningMode):void 0),ret.addPropertyResult("runningModeAutoStopTimeoutInMinutes","RunningModeAutoStopTimeoutInMinutes",properties.RunningModeAutoStopTimeoutInMinutes!=null?cfn_parse().FromCloudFormation.getNumber(properties.RunningModeAutoStopTimeoutInMinutes):void 0),ret.addPropertyResult("userVolumeSizeGib","UserVolumeSizeGib",properties.UserVolumeSizeGib!=null?cfn_parse().FromCloudFormation.getNumber(properties.UserVolumeSizeGib):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWorkspacePropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("bundleId",cdk().requiredValidator)(properties.bundleId)),errors.collect(cdk().propertyValidator("bundleId",cdk().validateString)(properties.bundleId)),errors.collect(cdk().propertyValidator("directoryId",cdk().requiredValidator)(properties.directoryId)),errors.collect(cdk().propertyValidator("directoryId",cdk().validateString)(properties.directoryId)),errors.collect(cdk().propertyValidator("rootVolumeEncryptionEnabled",cdk().validateBoolean)(properties.rootVolumeEncryptionEnabled)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("userName",cdk().requiredValidator)(properties.userName)),errors.collect(cdk().propertyValidator("userName",cdk().validateString)(properties.userName)),errors.collect(cdk().propertyValidator("userVolumeEncryptionEnabled",cdk().validateBoolean)(properties.userVolumeEncryptionEnabled)),errors.collect(cdk().propertyValidator("volumeEncryptionKey",cdk().validateString)(properties.volumeEncryptionKey)),errors.collect(cdk().propertyValidator("workspaceProperties",CfnWorkspaceWorkspacePropertiesPropertyValidator)(properties.workspaceProperties)),errors.wrap('supplied properties not correct for "CfnWorkspaceProps"')}function convertCfnWorkspacePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnWorkspacePropsValidator(properties).assertSuccess(),{BundleId:cdk().stringToCloudFormation(properties.bundleId),DirectoryId:cdk().stringToCloudFormation(properties.directoryId),RootVolumeEncryptionEnabled:cdk().booleanToCloudFormation(properties.rootVolumeEncryptionEnabled),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),UserName:cdk().stringToCloudFormation(properties.userName),UserVolumeEncryptionEnabled:cdk().booleanToCloudFormation(properties.userVolumeEncryptionEnabled),VolumeEncryptionKey:cdk().stringToCloudFormation(properties.volumeEncryptionKey),WorkspaceProperties:convertCfnWorkspaceWorkspacePropertiesPropertyToCloudFormation(properties.workspaceProperties)}):properties}function CfnWorkspacePropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("bundleId","BundleId",properties.BundleId!=null?cfn_parse().FromCloudFormation.getString(properties.BundleId):void 0),ret.addPropertyResult("directoryId","DirectoryId",properties.DirectoryId!=null?cfn_parse().FromCloudFormation.getString(properties.DirectoryId):void 0),ret.addPropertyResult("rootVolumeEncryptionEnabled","RootVolumeEncryptionEnabled",properties.RootVolumeEncryptionEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.RootVolumeEncryptionEnabled):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("userName","UserName",properties.UserName!=null?cfn_parse().FromCloudFormation.getString(properties.UserName):void 0),ret.addPropertyResult("userVolumeEncryptionEnabled","UserVolumeEncryptionEnabled",properties.UserVolumeEncryptionEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.UserVolumeEncryptionEnabled):void 0),ret.addPropertyResult("volumeEncryptionKey","VolumeEncryptionKey",properties.VolumeEncryptionKey!=null?cfn_parse().FromCloudFormation.getString(properties.VolumeEncryptionKey):void 0),ret.addPropertyResult("workspaceProperties","WorkspaceProperties",properties.WorkspaceProperties!=null?CfnWorkspaceWorkspacePropertiesPropertyFromCloudFormation(properties.WorkspaceProperties):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnWorkspacesPool extends cdk().CfnResource{static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnWorkspacesPoolPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnWorkspacesPool(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}constructor(scope,id,props){super(scope,id,{type:CfnWorkspacesPool.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_workspaces_CfnWorkspacesPoolProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnWorkspacesPool),error}cdk().requireProperty(props,"bundleId",this),cdk().requireProperty(props,"capacity",this),cdk().requireProperty(props,"directoryId",this),cdk().requireProperty(props,"poolName",this),this.attrCreatedAt=cdk().Token.asString(this.getAtt("CreatedAt",cdk().ResolutionTypeHint.STRING)),this.attrPoolArn=cdk().Token.asString(this.getAtt("PoolArn",cdk().ResolutionTypeHint.STRING)),this.attrPoolId=cdk().Token.asString(this.getAtt("PoolId",cdk().ResolutionTypeHint.STRING)),this.applicationSettings=props.applicationSettings,this.bundleId=props.bundleId,this.capacity=props.capacity,this.cdkTagManager=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::WorkSpaces::WorkspacesPool",void 0,{tagPropertyName:"tags"}),this.description=props.description,this.directoryId=props.directoryId,this.poolName=props.poolName,this.runningMode=props.runningMode,this.tags=props.tags,this.timeoutSettings=props.timeoutSettings}get cfnProperties(){return{applicationSettings:this.applicationSettings,bundleId:this.bundleId,capacity:this.capacity,tags:this.cdkTagManager.renderTags(this.tags),description:this.description,directoryId:this.directoryId,poolName:this.poolName,runningMode:this.runningMode,timeoutSettings:this.timeoutSettings}}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",CfnWorkspacesPool.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnWorkspacesPoolPropsToCloudFormation(props)}}exports.CfnWorkspacesPool=CfnWorkspacesPool,_c=JSII_RTTI_SYMBOL_1,CfnWorkspacesPool[_c]={fqn:"aws-cdk-lib.aws_workspaces.CfnWorkspacesPool",version:"2.202.0"},CfnWorkspacesPool.CFN_RESOURCE_TYPE_NAME="AWS::WorkSpaces::WorkspacesPool";function CfnWorkspacesPoolCapacityPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("desiredUserSessions",cdk().requiredValidator)(properties.desiredUserSessions)),errors.collect(cdk().propertyValidator("desiredUserSessions",cdk().validateNumber)(properties.desiredUserSessions)),errors.wrap('supplied properties not correct for "CapacityProperty"')}function convertCfnWorkspacesPoolCapacityPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnWorkspacesPoolCapacityPropertyValidator(properties).assertSuccess(),{DesiredUserSessions:cdk().numberToCloudFormation(properties.desiredUserSessions)}):properties}function CfnWorkspacesPoolCapacityPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("desiredUserSessions","DesiredUserSessions",properties.DesiredUserSessions!=null?cfn_parse().FromCloudFormation.getNumber(properties.DesiredUserSessions):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWorkspacesPoolApplicationSettingsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("settingsGroup",cdk().validateString)(properties.settingsGroup)),errors.collect(cdk().propertyValidator("status",cdk().requiredValidator)(properties.status)),errors.collect(cdk().propertyValidator("status",cdk().validateString)(properties.status)),errors.wrap('supplied properties not correct for "ApplicationSettingsProperty"')}function convertCfnWorkspacesPoolApplicationSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnWorkspacesPoolApplicationSettingsPropertyValidator(properties).assertSuccess(),{SettingsGroup:cdk().stringToCloudFormation(properties.settingsGroup),Status:cdk().stringToCloudFormation(properties.status)}):properties}function CfnWorkspacesPoolApplicationSettingsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("settingsGroup","SettingsGroup",properties.SettingsGroup!=null?cfn_parse().FromCloudFormation.getString(properties.SettingsGroup):void 0),ret.addPropertyResult("status","Status",properties.Status!=null?cfn_parse().FromCloudFormation.getString(properties.Status):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWorkspacesPoolTimeoutSettingsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("disconnectTimeoutInSeconds",cdk().validateNumber)(properties.disconnectTimeoutInSeconds)),errors.collect(cdk().propertyValidator("idleDisconnectTimeoutInSeconds",cdk().validateNumber)(properties.idleDisconnectTimeoutInSeconds)),errors.collect(cdk().propertyValidator("maxUserDurationInSeconds",cdk().validateNumber)(properties.maxUserDurationInSeconds)),errors.wrap('supplied properties not correct for "TimeoutSettingsProperty"')}function convertCfnWorkspacesPoolTimeoutSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnWorkspacesPoolTimeoutSettingsPropertyValidator(properties).assertSuccess(),{DisconnectTimeoutInSeconds:cdk().numberToCloudFormation(properties.disconnectTimeoutInSeconds),IdleDisconnectTimeoutInSeconds:cdk().numberToCloudFormation(properties.idleDisconnectTimeoutInSeconds),MaxUserDurationInSeconds:cdk().numberToCloudFormation(properties.maxUserDurationInSeconds)}):properties}function CfnWorkspacesPoolTimeoutSettingsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("disconnectTimeoutInSeconds","DisconnectTimeoutInSeconds",properties.DisconnectTimeoutInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.DisconnectTimeoutInSeconds):void 0),ret.addPropertyResult("idleDisconnectTimeoutInSeconds","IdleDisconnectTimeoutInSeconds",properties.IdleDisconnectTimeoutInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.IdleDisconnectTimeoutInSeconds):void 0),ret.addPropertyResult("maxUserDurationInSeconds","MaxUserDurationInSeconds",properties.MaxUserDurationInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxUserDurationInSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWorkspacesPoolPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("applicationSettings",CfnWorkspacesPoolApplicationSettingsPropertyValidator)(properties.applicationSettings)),errors.collect(cdk().propertyValidator("bundleId",cdk().requiredValidator)(properties.bundleId)),errors.collect(cdk().propertyValidator("bundleId",cdk().validateString)(properties.bundleId)),errors.collect(cdk().propertyValidator("capacity",cdk().requiredValidator)(properties.capacity)),errors.collect(cdk().propertyValidator("capacity",CfnWorkspacesPoolCapacityPropertyValidator)(properties.capacity)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("directoryId",cdk().requiredValidator)(properties.directoryId)),errors.collect(cdk().propertyValidator("directoryId",cdk().validateString)(properties.directoryId)),errors.collect(cdk().propertyValidator("poolName",cdk().requiredValidator)(properties.poolName)),errors.collect(cdk().propertyValidator("poolName",cdk().validateString)(properties.poolName)),errors.collect(cdk().propertyValidator("runningMode",cdk().validateString)(properties.runningMode)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("timeoutSettings",CfnWorkspacesPoolTimeoutSettingsPropertyValidator)(properties.timeoutSettings)),errors.wrap('supplied properties not correct for "CfnWorkspacesPoolProps"')}function convertCfnWorkspacesPoolPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnWorkspacesPoolPropsValidator(properties).assertSuccess(),{ApplicationSettings:convertCfnWorkspacesPoolApplicationSettingsPropertyToCloudFormation(properties.applicationSettings),BundleId:cdk().stringToCloudFormation(properties.bundleId),Capacity:convertCfnWorkspacesPoolCapacityPropertyToCloudFormation(properties.capacity),Description:cdk().stringToCloudFormation(properties.description),DirectoryId:cdk().stringToCloudFormation(properties.directoryId),PoolName:cdk().stringToCloudFormation(properties.poolName),RunningMode:cdk().stringToCloudFormation(properties.runningMode),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),TimeoutSettings:convertCfnWorkspacesPoolTimeoutSettingsPropertyToCloudFormation(properties.timeoutSettings)}):properties}function CfnWorkspacesPoolPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("applicationSettings","ApplicationSettings",properties.ApplicationSettings!=null?CfnWorkspacesPoolApplicationSettingsPropertyFromCloudFormation(properties.ApplicationSettings):void 0),ret.addPropertyResult("bundleId","BundleId",properties.BundleId!=null?cfn_parse().FromCloudFormation.getString(properties.BundleId):void 0),ret.addPropertyResult("capacity","Capacity",properties.Capacity!=null?CfnWorkspacesPoolCapacityPropertyFromCloudFormation(properties.Capacity):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("directoryId","DirectoryId",properties.DirectoryId!=null?cfn_parse().FromCloudFormation.getString(properties.DirectoryId):void 0),ret.addPropertyResult("poolName","PoolName",properties.PoolName!=null?cfn_parse().FromCloudFormation.getString(properties.PoolName):void 0),ret.addPropertyResult("runningMode","RunningMode",properties.RunningMode!=null?cfn_parse().FromCloudFormation.getString(properties.RunningMode):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("timeoutSettings","TimeoutSettings",properties.TimeoutSettings!=null?CfnWorkspacesPoolTimeoutSettingsPropertyFromCloudFormation(properties.TimeoutSettings):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}