File Coverage

blib/lib/Cfn/Resource/AWS/RDS/DBCluster.pm
Criterion Covered Total %
statement 26 26 100.0
branch n/a
condition n/a
subroutine 10 10 100.0
pod 0 2 0.0
total 36 38 94.7


line stmt bran cond sub pod time code
1             # AWS::RDS::DBCluster generated from spec 9.1.0
2 2     2   1186 use Moose::Util::TypeConstraints;
  2         6  
  2         19  
3              
4             coerce 'Cfn::Resource::Properties::AWS::RDS::DBCluster',
5             from 'HashRef',
6             via { Cfn::Resource::Properties::AWS::RDS::DBCluster->new( %$_ ) };
7              
8             package Cfn::Resource::AWS::RDS::DBCluster {
9 2     2   4018 use Moose;
  2         5  
  2         17  
10             extends 'Cfn::Resource';
11             has Properties => (isa => 'Cfn::Resource::Properties::AWS::RDS::DBCluster', is => 'rw', coerce => 1);
12            
13             sub AttributeList {
14 1     1 0 4 [ 'Endpoint.Address','Endpoint.Port','ReadEndpoint.Address' ]
15             }
16             sub supported_regions {
17 1     1 0 1089 [ 'ap-east-1','ap-northeast-1','ap-northeast-2','ap-northeast-3','ap-south-1','ap-southeast-1','ap-southeast-2','ca-central-1','cn-north-1','cn-northwest-1','eu-central-1','eu-north-1','eu-west-1','eu-west-2','eu-west-3','me-south-1','sa-east-1','us-east-1','us-east-2','us-gov-east-1','us-gov-west-1','us-west-1','us-west-2' ]
18             }
19             }
20              
21              
22              
23             subtype 'Cfn::Resource::Properties::AWS::RDS::DBCluster::ScalingConfiguration',
24             as 'Cfn::Value';
25              
26             coerce 'Cfn::Resource::Properties::AWS::RDS::DBCluster::ScalingConfiguration',
27             from 'HashRef',
28             via {
29             if (my $f = Cfn::TypeLibrary::try_function($_)) {
30             return $f
31             } else {
32             return Cfn::Resource::Properties::AWS::RDS::DBCluster::ScalingConfigurationValue->new( %$_ );
33             }
34             };
35              
36             package Cfn::Resource::Properties::AWS::RDS::DBCluster::ScalingConfigurationValue {
37 2     2   14222 use Moose;
  2         4  
  2         10  
38 2     2   13039 use MooseX::StrictConstructor;
  2         6  
  2         17  
39             extends 'Cfn::Value::TypedValue';
40            
41             has AutoPause => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
42             has MaxCapacity => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
43             has MinCapacity => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
44             has SecondsUntilAutoPause => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
45             }
46             subtype 'ArrayOfCfn::Resource::Properties::AWS::RDS::DBCluster::DBClusterRole',
47             as 'Cfn::Value',
48             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
49             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
50              
51             coerce 'ArrayOfCfn::Resource::Properties::AWS::RDS::DBCluster::DBClusterRole',
52             from 'HashRef',
53             via {
54             if (my $f = Cfn::TypeLibrary::try_function($_)) {
55             return $f
56             } else {
57             die 'Only accepts functions';
58             }
59             },
60             from 'ArrayRef',
61             via {
62             Cfn::Value::Array->new(Value => [
63             map {
64             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::RDS::DBCluster::DBClusterRole')->coerce($_)
65             } @$_
66             ]);
67             };
68              
69             subtype 'Cfn::Resource::Properties::AWS::RDS::DBCluster::DBClusterRole',
70             as 'Cfn::Value';
71              
72             coerce 'Cfn::Resource::Properties::AWS::RDS::DBCluster::DBClusterRole',
73             from 'HashRef',
74             via {
75             if (my $f = Cfn::TypeLibrary::try_function($_)) {
76             return $f
77             } else {
78             return Cfn::Resource::Properties::AWS::RDS::DBCluster::DBClusterRoleValue->new( %$_ );
79             }
80             };
81              
82             package Cfn::Resource::Properties::AWS::RDS::DBCluster::DBClusterRoleValue {
83 2     2   7336 use Moose;
  2         10  
  2         11  
84 2     2   13116 use MooseX::StrictConstructor;
  2         8  
  2         10  
85             extends 'Cfn::Value::TypedValue';
86            
87             has FeatureName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
88             has RoleArn => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
89             }
90              
91             package Cfn::Resource::Properties::AWS::RDS::DBCluster {
92 2     2   6410 use Moose;
  2         8  
  2         10  
93 2     2   12952 use MooseX::StrictConstructor;
  2         5  
  2         14  
94             extends 'Cfn::Resource::Properties';
95            
96             has AssociatedRoles => (isa => 'ArrayOfCfn::Resource::Properties::AWS::RDS::DBCluster::DBClusterRole', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
97             has AvailabilityZones => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
98             has BacktrackWindow => (isa => 'Cfn::Value::Long', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
99             has BackupRetentionPeriod => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
100             has DBClusterIdentifier => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
101             has DBClusterParameterGroupName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
102             has DBSubnetGroupName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
103             has DatabaseName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
104             has DeletionProtection => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
105             has EnableCloudwatchLogsExports => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
106             has EnableHttpEndpoint => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
107             has EnableIAMDatabaseAuthentication => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
108             has Engine => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
109             has EngineMode => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
110             has EngineVersion => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
111             has KmsKeyId => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
112             has MasterUserPassword => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
113             has MasterUsername => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
114             has Port => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
115             has PreferredBackupWindow => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
116             has PreferredMaintenanceWindow => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
117             has ReplicationSourceIdentifier => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
118             has RestoreType => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
119             has ScalingConfiguration => (isa => 'Cfn::Resource::Properties::AWS::RDS::DBCluster::ScalingConfiguration', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
120             has SnapshotIdentifier => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
121             has SourceDBClusterIdentifier => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
122             has SourceRegion => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
123             has StorageEncrypted => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
124             has Tags => (isa => 'ArrayOfCfn::Resource::Properties::TagType', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
125             has UseLatestRestorableTime => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
126             has VpcSecurityGroupIds => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
127             }
128              
129             1;