samtranslator/model/cognito.py (36 lines of code) (raw):
from samtranslator.model import GeneratedProperty, Resource
from samtranslator.model.intrinsics import fnGetAtt, ref
class CognitoUserPool(Resource):
resource_type = "AWS::Cognito::UserPool"
property_types = {
"AccountRecoverySetting": GeneratedProperty(),
"AdminCreateUserConfig": GeneratedProperty(),
"AliasAttributes": GeneratedProperty(),
"AutoVerifiedAttributes": GeneratedProperty(),
"DeletionProtection": GeneratedProperty(),
"DeviceConfiguration": GeneratedProperty(),
"EmailConfiguration": GeneratedProperty(),
"EmailVerificationMessage": GeneratedProperty(),
"EmailVerificationSubject": GeneratedProperty(),
"EnabledMfas": GeneratedProperty(),
"LambdaConfig": GeneratedProperty(),
"MfaConfiguration": GeneratedProperty(),
"Policies": GeneratedProperty(),
"Schema": GeneratedProperty(),
"SmsAuthenticationMessage": GeneratedProperty(),
"SmsConfiguration": GeneratedProperty(),
"SmsVerificationMessage": GeneratedProperty(),
"UserAttributeUpdateSettings": GeneratedProperty(),
"UsernameAttributes": GeneratedProperty(),
"UsernameConfiguration": GeneratedProperty(),
"UserPoolAddOns": GeneratedProperty(),
"UserPoolName": GeneratedProperty(),
"UserPoolTags": GeneratedProperty(),
"VerificationMessageTemplate": GeneratedProperty(),
}
runtime_attrs = {
"name": lambda self: ref(self.logical_id),
"arn": lambda self: fnGetAtt(self.logical_id, "Arn"),
"provider_name": lambda self: fnGetAtt(self.logical_id, "ProviderName"),
"provider_url": lambda self: fnGetAtt(self.logical_id, "ProviderURL"),
}