File Coverage

blib/lib/Cfn/Resource/AWS/S3/StorageLens.pm
Criterion Covered Total %
statement 86 86 100.0
branch n/a
condition n/a
subroutine 30 30 100.0
pod 0 2 0.0
total 116 118 98.3


line stmt bran cond sub pod time code
1             # AWS::S3::StorageLens generated from spec 21.0.0
2 1     1   937 use Moose::Util::TypeConstraints;
  1         3  
  1         11  
3              
4             coerce 'Cfn::Resource::Properties::AWS::S3::StorageLens',
5             from 'HashRef',
6             via { Cfn::Resource::Properties::AWS::S3::StorageLens->new( %$_ ) };
7              
8             package Cfn::Resource::AWS::S3::StorageLens {
9 1     1   2385 use Moose;
  1         3  
  1         16  
10             extends 'Cfn::Resource';
11             has Properties => (isa => 'Cfn::Resource::Properties::AWS::S3::StorageLens', is => 'rw', coerce => 1);
12            
13             sub AttributeList {
14 1     1 0 5 [ 'StorageLensArn' ]
15             }
16             sub supported_regions {
17 1     1 0 1190 [ 'ap-northeast-1','ap-northeast-2','ap-south-1','ap-southeast-1','ap-southeast-2','ca-central-1','eu-central-1','eu-north-1','eu-west-1','eu-west-2','eu-west-3','sa-east-1','us-east-1','us-east-2','us-west-1','us-west-2' ]
18             }
19             }
20              
21              
22              
23             subtype 'Cfn::Resource::Properties::AWS::S3::StorageLens::SelectionCriteria',
24             as 'Cfn::Value';
25              
26             coerce 'Cfn::Resource::Properties::AWS::S3::StorageLens::SelectionCriteria',
27             from 'HashRef',
28             via {
29             if (my $f = Cfn::TypeLibrary::try_function($_)) {
30             return $f
31             } else {
32             return Cfn::Resource::Properties::Object::AWS::S3::StorageLens::SelectionCriteria->new( %$_ );
33             }
34             };
35              
36             package Cfn::Resource::Properties::Object::AWS::S3::StorageLens::SelectionCriteria {
37 1     1   7788 use Moose;
  1         5  
  1         5  
38 1     1   6687 use MooseX::StrictConstructor;
  1         3  
  1         12  
39             extends 'Cfn::Value::TypedValue';
40            
41             has Delimiter => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
42             has MaxDepth => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
43             has MinStorageBytesPercentage => (isa => 'Cfn::Value::Double', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
44             }
45              
46             subtype 'Cfn::Resource::Properties::AWS::S3::StorageLens::PrefixLevelStorageMetrics',
47             as 'Cfn::Value';
48              
49             coerce 'Cfn::Resource::Properties::AWS::S3::StorageLens::PrefixLevelStorageMetrics',
50             from 'HashRef',
51             via {
52             if (my $f = Cfn::TypeLibrary::try_function($_)) {
53             return $f
54             } else {
55             return Cfn::Resource::Properties::Object::AWS::S3::StorageLens::PrefixLevelStorageMetrics->new( %$_ );
56             }
57             };
58              
59             package Cfn::Resource::Properties::Object::AWS::S3::StorageLens::PrefixLevelStorageMetrics {
60 1     1   3842 use Moose;
  1         7  
  1         5  
61 1     1   6701 use MooseX::StrictConstructor;
  1         4  
  1         9  
62             extends 'Cfn::Value::TypedValue';
63            
64             has IsEnabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
65             has SelectionCriteria => (isa => 'Cfn::Resource::Properties::AWS::S3::StorageLens::SelectionCriteria', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
66             }
67              
68             subtype 'Cfn::Resource::Properties::AWS::S3::StorageLens::PrefixLevel',
69             as 'Cfn::Value';
70              
71             coerce 'Cfn::Resource::Properties::AWS::S3::StorageLens::PrefixLevel',
72             from 'HashRef',
73             via {
74             if (my $f = Cfn::TypeLibrary::try_function($_)) {
75             return $f
76             } else {
77             return Cfn::Resource::Properties::Object::AWS::S3::StorageLens::PrefixLevel->new( %$_ );
78             }
79             };
80              
81             package Cfn::Resource::Properties::Object::AWS::S3::StorageLens::PrefixLevel {
82 1     1   3421 use Moose;
  1         3  
  1         6  
83 1     1   7078 use MooseX::StrictConstructor;
  1         3  
  1         5  
84             extends 'Cfn::Value::TypedValue';
85            
86             has StorageMetrics => (isa => 'Cfn::Resource::Properties::AWS::S3::StorageLens::PrefixLevelStorageMetrics', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
87             }
88              
89             subtype 'Cfn::Resource::Properties::AWS::S3::StorageLens::Encryption',
90             as 'Cfn::Value';
91              
92             coerce 'Cfn::Resource::Properties::AWS::S3::StorageLens::Encryption',
93             from 'HashRef',
94             via {
95             if (my $f = Cfn::TypeLibrary::try_function($_)) {
96             return $f
97             } else {
98             return Cfn::Resource::Properties::Object::AWS::S3::StorageLens::Encryption->new( %$_ );
99             }
100             };
101              
102             package Cfn::Resource::Properties::Object::AWS::S3::StorageLens::Encryption {
103 1     1   3455 use Moose;
  1         20  
  1         6  
104 1     1   6755 use MooseX::StrictConstructor;
  1         3  
  1         16  
105             extends 'Cfn::Value::TypedValue';
106            
107             }
108              
109             subtype 'Cfn::Resource::Properties::AWS::S3::StorageLens::ActivityMetrics',
110             as 'Cfn::Value';
111              
112             coerce 'Cfn::Resource::Properties::AWS::S3::StorageLens::ActivityMetrics',
113             from 'HashRef',
114             via {
115             if (my $f = Cfn::TypeLibrary::try_function($_)) {
116             return $f
117             } else {
118             return Cfn::Resource::Properties::Object::AWS::S3::StorageLens::ActivityMetrics->new( %$_ );
119             }
120             };
121              
122             package Cfn::Resource::Properties::Object::AWS::S3::StorageLens::ActivityMetrics {
123 1     1   3390 use Moose;
  1         2  
  1         11  
124 1     1   6687 use MooseX::StrictConstructor;
  1         2  
  1         6  
125             extends 'Cfn::Value::TypedValue';
126            
127             has IsEnabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
128             }
129              
130             subtype 'Cfn::Resource::Properties::AWS::S3::StorageLens::S3BucketDestination',
131             as 'Cfn::Value';
132              
133             coerce 'Cfn::Resource::Properties::AWS::S3::StorageLens::S3BucketDestination',
134             from 'HashRef',
135             via {
136             if (my $f = Cfn::TypeLibrary::try_function($_)) {
137             return $f
138             } else {
139             return Cfn::Resource::Properties::Object::AWS::S3::StorageLens::S3BucketDestination->new( %$_ );
140             }
141             };
142              
143             package Cfn::Resource::Properties::Object::AWS::S3::StorageLens::S3BucketDestination {
144 1     1   3354 use Moose;
  1         4  
  1         16  
145 1     1   6603 use MooseX::StrictConstructor;
  1         6  
  1         6  
146             extends 'Cfn::Value::TypedValue';
147            
148             has AccountId => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
149             has Arn => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
150             has Encryption => (isa => 'Cfn::Resource::Properties::AWS::S3::StorageLens::Encryption', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
151             has Format => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
152             has OutputSchemaVersion => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
153             has Prefix => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
154             }
155              
156             subtype 'Cfn::Resource::Properties::AWS::S3::StorageLens::BucketLevel',
157             as 'Cfn::Value';
158              
159             coerce 'Cfn::Resource::Properties::AWS::S3::StorageLens::BucketLevel',
160             from 'HashRef',
161             via {
162             if (my $f = Cfn::TypeLibrary::try_function($_)) {
163             return $f
164             } else {
165             return Cfn::Resource::Properties::Object::AWS::S3::StorageLens::BucketLevel->new( %$_ );
166             }
167             };
168              
169             package Cfn::Resource::Properties::Object::AWS::S3::StorageLens::BucketLevel {
170 1     1   3531 use Moose;
  1         2  
  1         6  
171 1     1   6697 use MooseX::StrictConstructor;
  1         8  
  1         8  
172             extends 'Cfn::Value::TypedValue';
173            
174             has ActivityMetrics => (isa => 'Cfn::Resource::Properties::AWS::S3::StorageLens::ActivityMetrics', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
175             has PrefixLevel => (isa => 'Cfn::Resource::Properties::AWS::S3::StorageLens::PrefixLevel', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
176             }
177              
178             subtype 'Cfn::Resource::Properties::AWS::S3::StorageLens::DataExport',
179             as 'Cfn::Value';
180              
181             coerce 'Cfn::Resource::Properties::AWS::S3::StorageLens::DataExport',
182             from 'HashRef',
183             via {
184             if (my $f = Cfn::TypeLibrary::try_function($_)) {
185             return $f
186             } else {
187             return Cfn::Resource::Properties::Object::AWS::S3::StorageLens::DataExport->new( %$_ );
188             }
189             };
190              
191             package Cfn::Resource::Properties::Object::AWS::S3::StorageLens::DataExport {
192 1     1   3390 use Moose;
  1         2  
  1         6  
193 1     1   6637 use MooseX::StrictConstructor;
  1         2  
  1         7  
194             extends 'Cfn::Value::TypedValue';
195            
196             has S3BucketDestination => (isa => 'Cfn::Resource::Properties::AWS::S3::StorageLens::S3BucketDestination', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
197             }
198              
199             subtype 'Cfn::Resource::Properties::AWS::S3::StorageLens::BucketsAndRegions',
200             as 'Cfn::Value';
201              
202             coerce 'Cfn::Resource::Properties::AWS::S3::StorageLens::BucketsAndRegions',
203             from 'HashRef',
204             via {
205             if (my $f = Cfn::TypeLibrary::try_function($_)) {
206             return $f
207             } else {
208             return Cfn::Resource::Properties::Object::AWS::S3::StorageLens::BucketsAndRegions->new( %$_ );
209             }
210             };
211              
212             package Cfn::Resource::Properties::Object::AWS::S3::StorageLens::BucketsAndRegions {
213 1     1   3443 use Moose;
  1         2  
  1         6  
214 1     1   6707 use MooseX::StrictConstructor;
  1         3  
  1         11  
215             extends 'Cfn::Value::TypedValue';
216            
217             has Buckets => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
218             has Regions => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
219             }
220              
221             subtype 'Cfn::Resource::Properties::AWS::S3::StorageLens::AwsOrg',
222             as 'Cfn::Value';
223              
224             coerce 'Cfn::Resource::Properties::AWS::S3::StorageLens::AwsOrg',
225             from 'HashRef',
226             via {
227             if (my $f = Cfn::TypeLibrary::try_function($_)) {
228             return $f
229             } else {
230             return Cfn::Resource::Properties::Object::AWS::S3::StorageLens::AwsOrg->new( %$_ );
231             }
232             };
233              
234             package Cfn::Resource::Properties::Object::AWS::S3::StorageLens::AwsOrg {
235 1     1   3414 use Moose;
  1         3  
  1         8  
236 1     1   6673 use MooseX::StrictConstructor;
  1         2  
  1         6  
237             extends 'Cfn::Value::TypedValue';
238            
239             has Arn => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
240             }
241              
242             subtype 'Cfn::Resource::Properties::AWS::S3::StorageLens::AccountLevel',
243             as 'Cfn::Value';
244              
245             coerce 'Cfn::Resource::Properties::AWS::S3::StorageLens::AccountLevel',
246             from 'HashRef',
247             via {
248             if (my $f = Cfn::TypeLibrary::try_function($_)) {
249             return $f
250             } else {
251             return Cfn::Resource::Properties::Object::AWS::S3::StorageLens::AccountLevel->new( %$_ );
252             }
253             };
254              
255             package Cfn::Resource::Properties::Object::AWS::S3::StorageLens::AccountLevel {
256 1     1   3506 use Moose;
  1         3  
  1         23  
257 1     1   6873 use MooseX::StrictConstructor;
  1         3  
  1         6  
258             extends 'Cfn::Value::TypedValue';
259            
260             has ActivityMetrics => (isa => 'Cfn::Resource::Properties::AWS::S3::StorageLens::ActivityMetrics', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
261             has BucketLevel => (isa => 'Cfn::Resource::Properties::AWS::S3::StorageLens::BucketLevel', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
262             }
263              
264             subtype 'Cfn::Resource::Properties::AWS::S3::StorageLens::StorageLensConfiguration',
265             as 'Cfn::Value';
266              
267             coerce 'Cfn::Resource::Properties::AWS::S3::StorageLens::StorageLensConfiguration',
268             from 'HashRef',
269             via {
270             if (my $f = Cfn::TypeLibrary::try_function($_)) {
271             return $f
272             } else {
273             return Cfn::Resource::Properties::Object::AWS::S3::StorageLens::StorageLensConfiguration->new( %$_ );
274             }
275             };
276              
277             package Cfn::Resource::Properties::Object::AWS::S3::StorageLens::StorageLensConfiguration {
278 1     1   3413 use Moose;
  1         23  
  1         8  
279 1     1   6682 use MooseX::StrictConstructor;
  1         4  
  1         6  
280             extends 'Cfn::Value::TypedValue';
281            
282             has AccountLevel => (isa => 'Cfn::Resource::Properties::AWS::S3::StorageLens::AccountLevel', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
283             has AwsOrg => (isa => 'Cfn::Resource::Properties::AWS::S3::StorageLens::AwsOrg', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
284             has DataExport => (isa => 'Cfn::Resource::Properties::AWS::S3::StorageLens::DataExport', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
285             has Exclude => (isa => 'Cfn::Resource::Properties::AWS::S3::StorageLens::BucketsAndRegions', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
286             has Id => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
287             has Include => (isa => 'Cfn::Resource::Properties::AWS::S3::StorageLens::BucketsAndRegions', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
288             has IsEnabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
289             has StorageLensArn => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
290             }
291              
292             package Cfn::Resource::Properties::AWS::S3::StorageLens {
293 1     1   3422 use Moose;
  1         3  
  1         7  
294 1     1   6754 use MooseX::StrictConstructor;
  1         6  
  1         6  
295             extends 'Cfn::Resource::Properties';
296            
297             has StorageLensConfiguration => (isa => 'Cfn::Resource::Properties::AWS::S3::StorageLens::StorageLensConfiguration', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
298             has Tags => (isa => 'ArrayOfCfn::Resource::Properties::TagType', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
299             }
300              
301             1;
302             ### main pod documentation begin ###
303              
304             =encoding UTF-8
305              
306             =head1 NAME
307              
308             Cfn::Resource::AWS::S3::StorageLens - Cfn resource for AWS::S3::StorageLens
309              
310             =head1 DESCRIPTION
311              
312             This module implements a Perl module that represents the CloudFormation object AWS::S3::StorageLens.
313              
314             See L<Cfn> for more information on how to use it.
315              
316             =head1 AUTHOR
317              
318             Jose Luis Martinez
319             CAPSiDE
320             jlmartinez@capside.com
321              
322             =head1 COPYRIGHT and LICENSE
323              
324             Copyright (c) 2013 by CAPSiDE
325             This code is distributed under the Apache 2 License. The full text of the
326             license can be found in the LICENSE file included with this module.
327              
328             =cut