File Coverage

blib/lib/Cfn/Resource/AWS/NetworkFirewall/FirewallPolicy.pm
Criterion Covered Total %
statement 92 92 100.0
branch n/a
condition n/a
subroutine 32 32 100.0
pod 0 2 0.0
total 124 126 98.4


line stmt bran cond sub pod time code
1             # AWS::NetworkFirewall::FirewallPolicy generated from spec 21.0.0
2 1     1   772 use Moose::Util::TypeConstraints;
  1         4  
  1         10  
3              
4             coerce 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy',
5             from 'HashRef',
6             via { Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy->new( %$_ ) };
7              
8             package Cfn::Resource::AWS::NetworkFirewall::FirewallPolicy {
9 1     1   2269 use Moose;
  1         3  
  1         8  
10             extends 'Cfn::Resource';
11             has Properties => (isa => 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy', is => 'rw', coerce => 1);
12            
13             sub AttributeList {
14 1     1 0 6 [ 'FirewallPolicyArn','FirewallPolicyId' ]
15             }
16             sub supported_regions {
17 1     1 0 1131 [ 'eu-west-1','us-east-1','us-west-2' ]
18             }
19             }
20              
21              
22             subtype 'ArrayOfCfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::Dimension',
23             as 'Cfn::Value',
24             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
25             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
26              
27             coerce 'ArrayOfCfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::Dimension',
28             from 'HashRef',
29             via {
30             if (my $f = Cfn::TypeLibrary::try_function($_)) {
31             return $f
32             } else {
33             die 'Only accepts functions';
34             }
35             },
36             from 'ArrayRef',
37             via {
38             Cfn::Value::Array->new(Value => [
39             map {
40             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::Dimension')->coerce($_)
41             } @$_
42             ]);
43             };
44              
45             subtype 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::Dimension',
46             as 'Cfn::Value';
47              
48             coerce 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::Dimension',
49             from 'HashRef',
50             via {
51             if (my $f = Cfn::TypeLibrary::try_function($_)) {
52             return $f
53             } else {
54             return Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::Dimension->new( %$_ );
55             }
56             };
57              
58             package Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::Dimension {
59 1     1   7570 use Moose;
  1         3  
  1         6  
60 1     1   7145 use MooseX::StrictConstructor;
  1         3  
  1         11  
61             extends 'Cfn::Value::TypedValue';
62            
63             has Value => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
64             }
65              
66             subtype 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::Dimensions',
67             as 'Cfn::Value';
68              
69             coerce 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::Dimensions',
70             from 'HashRef',
71             via {
72             if (my $f = Cfn::TypeLibrary::try_function($_)) {
73             return $f
74             } else {
75             return Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::Dimensions->new( %$_ );
76             }
77             };
78              
79             package Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::Dimensions {
80 1     1   3641 use Moose;
  1         3  
  1         5  
81 1     1   6764 use MooseX::StrictConstructor;
  1         4  
  1         5  
82             extends 'Cfn::Value::TypedValue';
83            
84             has Dimensions => (isa => 'ArrayOfCfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::Dimension', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
85             }
86              
87             subtype 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::PublishMetricAction',
88             as 'Cfn::Value';
89              
90             coerce 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::PublishMetricAction',
91             from 'HashRef',
92             via {
93             if (my $f = Cfn::TypeLibrary::try_function($_)) {
94             return $f
95             } else {
96             return Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::PublishMetricAction->new( %$_ );
97             }
98             };
99              
100             package Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::PublishMetricAction {
101 1     1   3452 use Moose;
  1         4  
  1         5  
102 1     1   6693 use MooseX::StrictConstructor;
  1         3  
  1         6  
103             extends 'Cfn::Value::TypedValue';
104            
105             has Dimensions => (isa => 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::Dimensions', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
106             }
107              
108             subtype 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::ActionDefinition',
109             as 'Cfn::Value';
110              
111             coerce 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::ActionDefinition',
112             from 'HashRef',
113             via {
114             if (my $f = Cfn::TypeLibrary::try_function($_)) {
115             return $f
116             } else {
117             return Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::ActionDefinition->new( %$_ );
118             }
119             };
120              
121             package Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::ActionDefinition {
122 1     1   3387 use Moose;
  1         5  
  1         6  
123 1     1   6696 use MooseX::StrictConstructor;
  1         3  
  1         6  
124             extends 'Cfn::Value::TypedValue';
125            
126             has PublishMetricAction => (isa => 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::PublishMetricAction', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
127             }
128             subtype 'ArrayOfCfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatelessRuleGroupReference',
129             as 'Cfn::Value',
130             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
131             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
132              
133             coerce 'ArrayOfCfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatelessRuleGroupReference',
134             from 'HashRef',
135             via {
136             if (my $f = Cfn::TypeLibrary::try_function($_)) {
137             return $f
138             } else {
139             die 'Only accepts functions';
140             }
141             },
142             from 'ArrayRef',
143             via {
144             Cfn::Value::Array->new(Value => [
145             map {
146             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatelessRuleGroupReference')->coerce($_)
147             } @$_
148             ]);
149             };
150              
151             subtype 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatelessRuleGroupReference',
152             as 'Cfn::Value';
153              
154             coerce 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatelessRuleGroupReference',
155             from 'HashRef',
156             via {
157             if (my $f = Cfn::TypeLibrary::try_function($_)) {
158             return $f
159             } else {
160             return Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::StatelessRuleGroupReference->new( %$_ );
161             }
162             };
163              
164             package Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::StatelessRuleGroupReference {
165 1     1   3778 use Moose;
  1         6  
  1         14  
166 1     1   6715 use MooseX::StrictConstructor;
  1         4  
  1         6  
167             extends 'Cfn::Value::TypedValue';
168            
169             has Priority => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
170             has ResourceArn => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
171             }
172             subtype 'ArrayOfCfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatefulRuleGroupReference',
173             as 'Cfn::Value',
174             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
175             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
176              
177             coerce 'ArrayOfCfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatefulRuleGroupReference',
178             from 'HashRef',
179             via {
180             if (my $f = Cfn::TypeLibrary::try_function($_)) {
181             return $f
182             } else {
183             die 'Only accepts functions';
184             }
185             },
186             from 'ArrayRef',
187             via {
188             Cfn::Value::Array->new(Value => [
189             map {
190             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatefulRuleGroupReference')->coerce($_)
191             } @$_
192             ]);
193             };
194              
195             subtype 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatefulRuleGroupReference',
196             as 'Cfn::Value';
197              
198             coerce 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatefulRuleGroupReference',
199             from 'HashRef',
200             via {
201             if (my $f = Cfn::TypeLibrary::try_function($_)) {
202             return $f
203             } else {
204             return Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::StatefulRuleGroupReference->new( %$_ );
205             }
206             };
207              
208             package Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::StatefulRuleGroupReference {
209 1     1   3646 use Moose;
  1         4  
  1         7  
210 1     1   6784 use MooseX::StrictConstructor;
  1         3  
  1         7  
211             extends 'Cfn::Value::TypedValue';
212            
213             has ResourceArn => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
214             }
215             subtype 'ArrayOfCfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::CustomAction',
216             as 'Cfn::Value',
217             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
218             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
219              
220             coerce 'ArrayOfCfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::CustomAction',
221             from 'HashRef',
222             via {
223             if (my $f = Cfn::TypeLibrary::try_function($_)) {
224             return $f
225             } else {
226             die 'Only accepts functions';
227             }
228             },
229             from 'ArrayRef',
230             via {
231             Cfn::Value::Array->new(Value => [
232             map {
233             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::CustomAction')->coerce($_)
234             } @$_
235             ]);
236             };
237              
238             subtype 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::CustomAction',
239             as 'Cfn::Value';
240              
241             coerce 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::CustomAction',
242             from 'HashRef',
243             via {
244             if (my $f = Cfn::TypeLibrary::try_function($_)) {
245             return $f
246             } else {
247             return Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::CustomAction->new( %$_ );
248             }
249             };
250              
251             package Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::CustomAction {
252 1     1   3596 use Moose;
  1         2  
  1         5  
253 1     1   6746 use MooseX::StrictConstructor;
  1         3  
  1         6  
254             extends 'Cfn::Value::TypedValue';
255            
256             has ActionDefinition => (isa => 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::ActionDefinition', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
257             has ActionName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
258             }
259              
260             subtype 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatelessRuleGroupReferences',
261             as 'Cfn::Value';
262              
263             coerce 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatelessRuleGroupReferences',
264             from 'HashRef',
265             via {
266             if (my $f = Cfn::TypeLibrary::try_function($_)) {
267             return $f
268             } else {
269             return Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::StatelessRuleGroupReferences->new( %$_ );
270             }
271             };
272              
273             package Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::StatelessRuleGroupReferences {
274 1     1   3470 use Moose;
  1         4  
  1         5  
275 1     1   6764 use MooseX::StrictConstructor;
  1         4  
  1         7  
276             extends 'Cfn::Value::TypedValue';
277            
278             has StatelessRuleGroupReferences => (isa => 'ArrayOfCfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatelessRuleGroupReference', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
279             }
280              
281             subtype 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatelessActions',
282             as 'Cfn::Value';
283              
284             coerce 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatelessActions',
285             from 'HashRef',
286             via {
287             if (my $f = Cfn::TypeLibrary::try_function($_)) {
288             return $f
289             } else {
290             return Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::StatelessActions->new( %$_ );
291             }
292             };
293              
294             package Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::StatelessActions {
295 1     1   3463 use Moose;
  1         3  
  1         6  
296 1     1   6866 use MooseX::StrictConstructor;
  1         2  
  1         5  
297             extends 'Cfn::Value::TypedValue';
298            
299             has StatelessActions => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
300             }
301              
302             subtype 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatefulRuleGroupReferences',
303             as 'Cfn::Value';
304              
305             coerce 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatefulRuleGroupReferences',
306             from 'HashRef',
307             via {
308             if (my $f = Cfn::TypeLibrary::try_function($_)) {
309             return $f
310             } else {
311             return Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::StatefulRuleGroupReferences->new( %$_ );
312             }
313             };
314              
315             package Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::StatefulRuleGroupReferences {
316 1     1   3490 use Moose;
  1         4  
  1         15  
317 1     1   6674 use MooseX::StrictConstructor;
  1         4  
  1         5  
318             extends 'Cfn::Value::TypedValue';
319            
320             has StatefulRuleGroupReferences => (isa => 'ArrayOfCfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatefulRuleGroupReference', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
321             }
322              
323             subtype 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::CustomActions',
324             as 'Cfn::Value';
325              
326             coerce 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::CustomActions',
327             from 'HashRef',
328             via {
329             if (my $f = Cfn::TypeLibrary::try_function($_)) {
330             return $f
331             } else {
332             return Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::CustomActions->new( %$_ );
333             }
334             };
335              
336             package Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::CustomActions {
337 1     1   3400 use Moose;
  1         3  
  1         6  
338 1     1   6631 use MooseX::StrictConstructor;
  1         3  
  1         7  
339             extends 'Cfn::Value::TypedValue';
340            
341             has CustomActions => (isa => 'ArrayOfCfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::CustomAction', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
342             }
343              
344             subtype 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::Tags',
345             as 'Cfn::Value';
346              
347             coerce 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::Tags',
348             from 'HashRef',
349             via {
350             if (my $f = Cfn::TypeLibrary::try_function($_)) {
351             return $f
352             } else {
353             return Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::Tags->new( %$_ );
354             }
355             };
356              
357             package Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::Tags {
358 1     1   3458 use Moose;
  1         4  
  1         7  
359 1     1   6939 use MooseX::StrictConstructor;
  1         2  
  1         8  
360             extends 'Cfn::Value::TypedValue';
361            
362             has Tags => (isa => 'ArrayOfCfn::Resource::Properties::TagType', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
363             }
364              
365             subtype 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::FirewallPolicy',
366             as 'Cfn::Value';
367              
368             coerce 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::FirewallPolicy',
369             from 'HashRef',
370             via {
371             if (my $f = Cfn::TypeLibrary::try_function($_)) {
372             return $f
373             } else {
374             return Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::FirewallPolicy->new( %$_ );
375             }
376             };
377              
378             package Cfn::Resource::Properties::Object::AWS::NetworkFirewall::FirewallPolicy::FirewallPolicy {
379 1     1   3437 use Moose;
  1         3  
  1         6  
380 1     1   6977 use MooseX::StrictConstructor;
  1         3  
  1         7  
381             extends 'Cfn::Value::TypedValue';
382            
383             has StatefulRuleGroupReferences => (isa => 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatefulRuleGroupReferences', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
384             has StatelessCustomActions => (isa => 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::CustomActions', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
385             has StatelessDefaultActions => (isa => 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatelessActions', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
386             has StatelessFragmentDefaultActions => (isa => 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatelessActions', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
387             has StatelessRuleGroupReferences => (isa => 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::StatelessRuleGroupReferences', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
388             }
389              
390             package Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy {
391 1     1   3329 use Moose;
  1         2  
  1         6  
392 1     1   6678 use MooseX::StrictConstructor;
  1         4  
  1         8  
393             extends 'Cfn::Resource::Properties';
394            
395             has Description => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
396             has FirewallPolicy => (isa => 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::FirewallPolicy', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
397             has FirewallPolicyName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
398             has Tags => (isa => 'Cfn::Resource::Properties::AWS::NetworkFirewall::FirewallPolicy::Tags', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
399             }
400              
401             1;
402             ### main pod documentation begin ###
403              
404             =encoding UTF-8
405              
406             =head1 NAME
407              
408             Cfn::Resource::AWS::NetworkFirewall::FirewallPolicy - Cfn resource for AWS::NetworkFirewall::FirewallPolicy
409              
410             =head1 DESCRIPTION
411              
412             This module implements a Perl module that represents the CloudFormation object AWS::NetworkFirewall::FirewallPolicy.
413              
414             See L<Cfn> for more information on how to use it.
415              
416             =head1 AUTHOR
417              
418             Jose Luis Martinez
419             CAPSiDE
420             jlmartinez@capside.com
421              
422             =head1 COPYRIGHT and LICENSE
423              
424             Copyright (c) 2013 by CAPSiDE
425             This code is distributed under the Apache 2 License. The full text of the
426             license can be found in the LICENSE file included with this module.
427              
428             =cut