File Coverage

blib/lib/Cfn/Resource/AWS/AppMesh/VirtualNode.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::AppMesh::VirtualNode generated from spec 4.1.0
2 1     1   637 use Moose::Util::TypeConstraints;
  1         3  
  1         9  
3              
4             coerce 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode',
5             from 'HashRef',
6             via { Cfn::Resource::Properties::AWS::AppMesh::VirtualNode->new( %$_ ) };
7              
8             package Cfn::Resource::AWS::AppMesh::VirtualNode {
9 1     1   1814 use Moose;
  1         4  
  1         6  
10             extends 'Cfn::Resource';
11             has Properties => (isa => 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode', is => 'rw', coerce => 1);
12            
13             sub AttributeList {
14 1     1 0 5 [ 'Arn','MeshName','Uid','VirtualNodeName' ]
15             }
16             sub supported_regions {
17 1     1 0 962 [ 'ap-northeast-1','ap-northeast-2','ap-south-1','ap-southeast-1','ap-southeast-2','ca-central-1','eu-central-1','eu-west-1','eu-west-2','us-east-1','us-east-2','us-west-1','us-west-2' ]
18             }
19             }
20              
21              
22              
23             subtype 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::FileAccessLog',
24             as 'Cfn::Value';
25              
26             coerce 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::FileAccessLog',
27             from 'HashRef',
28             via {
29             if (my $f = Cfn::TypeLibrary::try_function($_)) {
30             return $f
31             } else {
32             return Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::FileAccessLogValue->new( %$_ );
33             }
34             };
35              
36             package Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::FileAccessLogValue {
37 1     1   5895 use Moose;
  1         3  
  1         4  
38 1     1   5256 use MooseX::StrictConstructor;
  1         2  
  1         9  
39             extends 'Cfn::Value::TypedValue';
40            
41             has Path => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
42             }
43             subtype 'ArrayOfCfn::Resource::Properties::AWS::AppMesh::VirtualNode::AwsCloudMapInstanceAttribute',
44             as 'Cfn::Value',
45             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
46             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
47              
48             coerce 'ArrayOfCfn::Resource::Properties::AWS::AppMesh::VirtualNode::AwsCloudMapInstanceAttribute',
49             from 'HashRef',
50             via {
51             if (my $f = Cfn::TypeLibrary::try_function($_)) {
52             return $f
53             } else {
54             die 'Only accepts functions';
55             }
56             },
57             from 'ArrayRef',
58             via {
59             Cfn::Value::Array->new(Value => [
60             map {
61             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::AwsCloudMapInstanceAttribute')->coerce($_)
62             } @$_
63             ]);
64             };
65              
66             subtype 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::AwsCloudMapInstanceAttribute',
67             as 'Cfn::Value';
68              
69             coerce 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::AwsCloudMapInstanceAttribute',
70             from 'HashRef',
71             via {
72             if (my $f = Cfn::TypeLibrary::try_function($_)) {
73             return $f
74             } else {
75             return Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::AwsCloudMapInstanceAttributeValue->new( %$_ );
76             }
77             };
78              
79             package Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::AwsCloudMapInstanceAttributeValue {
80 1     1   3047 use Moose;
  1         2  
  1         6  
81 1     1   5295 use MooseX::StrictConstructor;
  1         2  
  1         4  
82             extends 'Cfn::Value::TypedValue';
83            
84             has Key => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
85             has Value => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
86             }
87              
88             subtype 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::VirtualServiceBackend',
89             as 'Cfn::Value';
90              
91             coerce 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::VirtualServiceBackend',
92             from 'HashRef',
93             via {
94             if (my $f = Cfn::TypeLibrary::try_function($_)) {
95             return $f
96             } else {
97             return Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::VirtualServiceBackendValue->new( %$_ );
98             }
99             };
100              
101             package Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::VirtualServiceBackendValue {
102 1     1   2772 use Moose;
  1         2  
  1         5  
103 1     1   5316 use MooseX::StrictConstructor;
  1         2  
  1         5  
104             extends 'Cfn::Value::TypedValue';
105            
106             has VirtualServiceName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
107             }
108              
109             subtype 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::PortMapping',
110             as 'Cfn::Value';
111              
112             coerce 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::PortMapping',
113             from 'HashRef',
114             via {
115             if (my $f = Cfn::TypeLibrary::try_function($_)) {
116             return $f
117             } else {
118             return Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::PortMappingValue->new( %$_ );
119             }
120             };
121              
122             package Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::PortMappingValue {
123 1     1   2777 use Moose;
  1         3  
  1         5  
124 1     1   6002 use MooseX::StrictConstructor;
  1         4  
  1         5  
125             extends 'Cfn::Value::TypedValue';
126            
127             has Port => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
128             has Protocol => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
129             }
130              
131             subtype 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::HealthCheck',
132             as 'Cfn::Value';
133              
134             coerce 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::HealthCheck',
135             from 'HashRef',
136             via {
137             if (my $f = Cfn::TypeLibrary::try_function($_)) {
138             return $f
139             } else {
140             return Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::HealthCheckValue->new( %$_ );
141             }
142             };
143              
144             package Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::HealthCheckValue {
145 1     1   2906 use Moose;
  1         3  
  1         5  
146 1     1   5455 use MooseX::StrictConstructor;
  1         3  
  1         5  
147             extends 'Cfn::Value::TypedValue';
148            
149             has HealthyThreshold => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
150             has IntervalMillis => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
151             has Path => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
152             has Port => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
153             has Protocol => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
154             has TimeoutMillis => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
155             has UnhealthyThreshold => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
156             }
157              
158             subtype 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::DnsServiceDiscovery',
159             as 'Cfn::Value';
160              
161             coerce 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::DnsServiceDiscovery',
162             from 'HashRef',
163             via {
164             if (my $f = Cfn::TypeLibrary::try_function($_)) {
165             return $f
166             } else {
167             return Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::DnsServiceDiscoveryValue->new( %$_ );
168             }
169             };
170              
171             package Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::DnsServiceDiscoveryValue {
172 1     1   2973 use Moose;
  1         2  
  1         5  
173 1     1   5522 use MooseX::StrictConstructor;
  1         2  
  1         6  
174             extends 'Cfn::Value::TypedValue';
175            
176             has Hostname => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
177             }
178              
179             subtype 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::AwsCloudMapServiceDiscovery',
180             as 'Cfn::Value';
181              
182             coerce 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::AwsCloudMapServiceDiscovery',
183             from 'HashRef',
184             via {
185             if (my $f = Cfn::TypeLibrary::try_function($_)) {
186             return $f
187             } else {
188             return Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::AwsCloudMapServiceDiscoveryValue->new( %$_ );
189             }
190             };
191              
192             package Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::AwsCloudMapServiceDiscoveryValue {
193 1     1   2799 use Moose;
  1         2  
  1         5  
194 1     1   5543 use MooseX::StrictConstructor;
  1         3  
  1         6  
195             extends 'Cfn::Value::TypedValue';
196            
197             has Attributes => (isa => 'ArrayOfCfn::Resource::Properties::AWS::AppMesh::VirtualNode::AwsCloudMapInstanceAttribute', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
198             has NamespaceName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
199             has ServiceName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
200             }
201              
202             subtype 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::AccessLog',
203             as 'Cfn::Value';
204              
205             coerce 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::AccessLog',
206             from 'HashRef',
207             via {
208             if (my $f = Cfn::TypeLibrary::try_function($_)) {
209             return $f
210             } else {
211             return Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::AccessLogValue->new( %$_ );
212             }
213             };
214              
215             package Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::AccessLogValue {
216 1     1   2848 use Moose;
  1         4  
  1         5  
217 1     1   5433 use MooseX::StrictConstructor;
  1         2  
  1         7  
218             extends 'Cfn::Value::TypedValue';
219            
220             has File => (isa => 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::FileAccessLog', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
221             }
222              
223             subtype 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::ServiceDiscovery',
224             as 'Cfn::Value';
225              
226             coerce 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::ServiceDiscovery',
227             from 'HashRef',
228             via {
229             if (my $f = Cfn::TypeLibrary::try_function($_)) {
230             return $f
231             } else {
232             return Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::ServiceDiscoveryValue->new( %$_ );
233             }
234             };
235              
236             package Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::ServiceDiscoveryValue {
237 1     1   2775 use Moose;
  1         2  
  1         4  
238 1     1   5322 use MooseX::StrictConstructor;
  1         2  
  1         4  
239             extends 'Cfn::Value::TypedValue';
240            
241             has AWSCloudMap => (isa => 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::AwsCloudMapServiceDiscovery', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
242             has DNS => (isa => 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::DnsServiceDiscovery', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
243             }
244              
245             subtype 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::Logging',
246             as 'Cfn::Value';
247              
248             coerce 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::Logging',
249             from 'HashRef',
250             via {
251             if (my $f = Cfn::TypeLibrary::try_function($_)) {
252             return $f
253             } else {
254             return Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::LoggingValue->new( %$_ );
255             }
256             };
257              
258             package Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::LoggingValue {
259 1     1   2779 use Moose;
  1         3  
  1         6  
260 1     1   5820 use MooseX::StrictConstructor;
  1         3  
  1         8  
261             extends 'Cfn::Value::TypedValue';
262            
263             has AccessLog => (isa => 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::AccessLog', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
264             }
265             subtype 'ArrayOfCfn::Resource::Properties::AWS::AppMesh::VirtualNode::Listener',
266             as 'Cfn::Value',
267             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
268             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
269              
270             coerce 'ArrayOfCfn::Resource::Properties::AWS::AppMesh::VirtualNode::Listener',
271             from 'HashRef',
272             via {
273             if (my $f = Cfn::TypeLibrary::try_function($_)) {
274             return $f
275             } else {
276             die 'Only accepts functions';
277             }
278             },
279             from 'ArrayRef',
280             via {
281             Cfn::Value::Array->new(Value => [
282             map {
283             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::Listener')->coerce($_)
284             } @$_
285             ]);
286             };
287              
288             subtype 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::Listener',
289             as 'Cfn::Value';
290              
291             coerce 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::Listener',
292             from 'HashRef',
293             via {
294             if (my $f = Cfn::TypeLibrary::try_function($_)) {
295             return $f
296             } else {
297             return Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::ListenerValue->new( %$_ );
298             }
299             };
300              
301             package Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::ListenerValue {
302 1     1   3441 use Moose;
  1         2  
  1         5  
303 1     1   5743 use MooseX::StrictConstructor;
  1         2  
  1         6  
304             extends 'Cfn::Value::TypedValue';
305            
306             has HealthCheck => (isa => 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::HealthCheck', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
307             has PortMapping => (isa => 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::PortMapping', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
308             }
309             subtype 'ArrayOfCfn::Resource::Properties::AWS::AppMesh::VirtualNode::Backend',
310             as 'Cfn::Value',
311             where { $_->isa('Cfn::Value::Array') or $_->isa('Cfn::Value::Function') },
312             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
313              
314             coerce 'ArrayOfCfn::Resource::Properties::AWS::AppMesh::VirtualNode::Backend',
315             from 'HashRef',
316             via {
317             if (my $f = Cfn::TypeLibrary::try_function($_)) {
318             return $f
319             } else {
320             die 'Only accepts functions';
321             }
322             },
323             from 'ArrayRef',
324             via {
325             Cfn::Value::Array->new(Value => [
326             map {
327             Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::Backend')->coerce($_)
328             } @$_
329             ]);
330             };
331              
332             subtype 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::Backend',
333             as 'Cfn::Value';
334              
335             coerce 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::Backend',
336             from 'HashRef',
337             via {
338             if (my $f = Cfn::TypeLibrary::try_function($_)) {
339             return $f
340             } else {
341             return Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::BackendValue->new( %$_ );
342             }
343             };
344              
345             package Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::BackendValue {
346 1     1   3232 use Moose;
  1         3  
  1         5  
347 1     1   5738 use MooseX::StrictConstructor;
  1         3  
  1         6  
348             extends 'Cfn::Value::TypedValue';
349            
350             has VirtualService => (isa => 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::VirtualServiceBackend', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
351             }
352              
353             subtype 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::VirtualNodeSpec',
354             as 'Cfn::Value';
355              
356             coerce 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::VirtualNodeSpec',
357             from 'HashRef',
358             via {
359             if (my $f = Cfn::TypeLibrary::try_function($_)) {
360             return $f
361             } else {
362             return Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::VirtualNodeSpecValue->new( %$_ );
363             }
364             };
365              
366             package Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::VirtualNodeSpecValue {
367 1     1   3160 use Moose;
  1         3  
  1         6  
368 1     1   6261 use MooseX::StrictConstructor;
  1         2  
  1         8  
369             extends 'Cfn::Value::TypedValue';
370            
371             has Backends => (isa => 'ArrayOfCfn::Resource::Properties::AWS::AppMesh::VirtualNode::Backend', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
372             has Listeners => (isa => 'ArrayOfCfn::Resource::Properties::AWS::AppMesh::VirtualNode::Listener', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
373             has Logging => (isa => 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::Logging', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
374             has ServiceDiscovery => (isa => 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::ServiceDiscovery', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
375             }
376              
377             package Cfn::Resource::Properties::AWS::AppMesh::VirtualNode {
378 1     1   3514 use Moose;
  1         3  
  1         7  
379 1     1   6581 use MooseX::StrictConstructor;
  1         2  
  1         8  
380             extends 'Cfn::Resource::Properties';
381            
382             has MeshName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
383             has Spec => (isa => 'Cfn::Resource::Properties::AWS::AppMesh::VirtualNode::VirtualNodeSpec', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
384             has Tags => (isa => 'ArrayOfCfn::Resource::Properties::TagType', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
385             has VirtualNodeName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, required => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
386             }
387              
388             1;