File Coverage

blib/lib/Cfn/Resource/AWS/Elasticsearch/Domain.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::Elasticsearch::Domain generated from spec 20.1.0
2 2     2   1548 use Moose::Util::TypeConstraints;
  2         6  
  2         21  
3              
4             coerce 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain',
5             from 'HashRef',
6             via { Cfn::Resource::Properties::AWS::Elasticsearch::Domain->new( %$_ ) };
7              
8             package Cfn::Resource::AWS::Elasticsearch::Domain {
9 2     2   4561 use Moose;
  2         7  
  2         18  
10             extends 'Cfn::Resource';
11             has Properties => (isa => 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain', is => 'rw', coerce => 1);
12            
13             sub AttributeList {
14 1     1 0 4 [ 'Arn','DomainArn','DomainEndpoint' ]
15             }
16             sub supported_regions {
17 1     1 0 1211 [ 'af-south-1','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-south-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::Elasticsearch::Domain::ZoneAwarenessConfig',
24             as 'Cfn::Value';
25              
26             coerce 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::ZoneAwarenessConfig',
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::Elasticsearch::Domain::ZoneAwarenessConfig->new( %$_ );
33             }
34             };
35              
36             package Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::ZoneAwarenessConfig {
37 2     2   14949 use Moose;
  2         7  
  2         20  
38 2     2   13395 use MooseX::StrictConstructor;
  2         7  
  2         21  
39             extends 'Cfn::Value::TypedValue';
40            
41             has AvailabilityZoneCount => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
42             }
43              
44             subtype 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::MasterUserOptions',
45             as 'Cfn::Value';
46              
47             coerce 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::MasterUserOptions',
48             from 'HashRef',
49             via {
50             if (my $f = Cfn::TypeLibrary::try_function($_)) {
51             return $f
52             } else {
53             return Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::MasterUserOptions->new( %$_ );
54             }
55             };
56              
57             package Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::MasterUserOptions {
58 2     2   7343 use Moose;
  2         9  
  2         12  
59 2     2   13380 use MooseX::StrictConstructor;
  2         7  
  2         15  
60             extends 'Cfn::Value::TypedValue';
61            
62             has MasterUserARN => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
63             has MasterUserName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
64             has MasterUserPassword => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
65             }
66              
67             subtype 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::VPCOptions',
68             as 'Cfn::Value';
69              
70             coerce 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::VPCOptions',
71             from 'HashRef',
72             via {
73             if (my $f = Cfn::TypeLibrary::try_function($_)) {
74             return $f
75             } else {
76             return Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::VPCOptions->new( %$_ );
77             }
78             };
79              
80             package Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::VPCOptions {
81 2     2   6909 use Moose;
  2         7  
  2         10  
82 2     2   13097 use MooseX::StrictConstructor;
  2         5  
  2         12  
83             extends 'Cfn::Value::TypedValue';
84            
85             has SecurityGroupIds => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
86             has SubnetIds => (isa => 'Cfn::Value::Array|Cfn::Value::Function|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
87             }
88              
89             subtype 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::SnapshotOptions',
90             as 'Cfn::Value';
91              
92             coerce 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::SnapshotOptions',
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::Elasticsearch::Domain::SnapshotOptions->new( %$_ );
99             }
100             };
101              
102             package Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::SnapshotOptions {
103 2     2   6839 use Moose;
  2         8  
  2         13  
104 2     2   13198 use MooseX::StrictConstructor;
  2         5  
  2         12  
105             extends 'Cfn::Value::TypedValue';
106            
107             has AutomatedSnapshotStartHour => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
108             }
109              
110             subtype 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::NodeToNodeEncryptionOptions',
111             as 'Cfn::Value';
112              
113             coerce 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::NodeToNodeEncryptionOptions',
114             from 'HashRef',
115             via {
116             if (my $f = Cfn::TypeLibrary::try_function($_)) {
117             return $f
118             } else {
119             return Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::NodeToNodeEncryptionOptions->new( %$_ );
120             }
121             };
122              
123             package Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::NodeToNodeEncryptionOptions {
124 2     2   6799 use Moose;
  2         6  
  2         15  
125 2     2   13164 use MooseX::StrictConstructor;
  2         6  
  2         10  
126             extends 'Cfn::Value::TypedValue';
127            
128             has Enabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
129             }
130              
131             subtype 'MapOfCfn::Resource::Properties::AWS::Elasticsearch::Domain::LogPublishingOption',
132             as 'Cfn::Value',
133             where { $_->isa('Cfn::Value::Hash') or $_->isa('Cfn::Value::Function') },
134             message { "$_ is not a Cfn::Value or a Cfn::Value::Function" };
135              
136             coerce 'MapOfCfn::Resource::Properties::AWS::Elasticsearch::Domain::LogPublishingOption',
137             from 'HashRef',
138             via {
139             my $arg = $_;
140             if (my $f = Cfn::TypeLibrary::try_function($arg)) {
141             return $f
142             } else {
143             Cfn::Value::Hash->new(Value => {
144             map { $_ => Moose::Util::TypeConstraints::find_type_constraint('Cfn::Resource::Properties::AWS::Elasticsearch::Domain::LogPublishingOption')->coerce($arg->{$_}) } keys %$arg
145             });
146             }
147             };
148              
149             subtype 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::LogPublishingOption',
150             as 'Cfn::Value';
151              
152             coerce 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::LogPublishingOption',
153             from 'HashRef',
154             via {
155             if (my $f = Cfn::TypeLibrary::try_function($_)) {
156             return $f
157             } else {
158             return Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::LogPublishingOption->new( %$_ );
159             }
160             };
161              
162             package Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::LogPublishingOption {
163 2     2   7184 use Moose;
  2         7  
  2         14  
164 2     2   13286 use MooseX::StrictConstructor;
  2         6  
  2         12  
165             extends 'Cfn::Value::TypedValue';
166            
167             has CloudWatchLogsLogGroupArn => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
168             has Enabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
169             }
170              
171             subtype 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::EncryptionAtRestOptions',
172             as 'Cfn::Value';
173              
174             coerce 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::EncryptionAtRestOptions',
175             from 'HashRef',
176             via {
177             if (my $f = Cfn::TypeLibrary::try_function($_)) {
178             return $f
179             } else {
180             return Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::EncryptionAtRestOptions->new( %$_ );
181             }
182             };
183              
184             package Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::EncryptionAtRestOptions {
185 2     2   6805 use Moose;
  2         7  
  2         13  
186 2     2   13160 use MooseX::StrictConstructor;
  2         12  
  2         10  
187             extends 'Cfn::Value::TypedValue';
188            
189             has Enabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
190             has KmsKeyId => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
191             }
192              
193             subtype 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::ElasticsearchClusterConfig',
194             as 'Cfn::Value';
195              
196             coerce 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::ElasticsearchClusterConfig',
197             from 'HashRef',
198             via {
199             if (my $f = Cfn::TypeLibrary::try_function($_)) {
200             return $f
201             } else {
202             return Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::ElasticsearchClusterConfig->new( %$_ );
203             }
204             };
205              
206             package Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::ElasticsearchClusterConfig {
207 2     2   6901 use Moose;
  2         8  
  2         15  
208 2     2   13201 use MooseX::StrictConstructor;
  2         7  
  2         11  
209             extends 'Cfn::Value::TypedValue';
210            
211             has DedicatedMasterCount => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
212             has DedicatedMasterEnabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
213             has DedicatedMasterType => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
214             has InstanceCount => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
215             has InstanceType => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
216             has WarmCount => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
217             has WarmEnabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
218             has WarmType => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
219             has ZoneAwarenessConfig => (isa => 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::ZoneAwarenessConfig', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
220             has ZoneAwarenessEnabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
221             }
222              
223             subtype 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::EBSOptions',
224             as 'Cfn::Value';
225              
226             coerce 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::EBSOptions',
227             from 'HashRef',
228             via {
229             if (my $f = Cfn::TypeLibrary::try_function($_)) {
230             return $f
231             } else {
232             return Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::EBSOptions->new( %$_ );
233             }
234             };
235              
236             package Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::EBSOptions {
237 2     2   7000 use Moose;
  2         5  
  2         11  
238 2     2   13574 use MooseX::StrictConstructor;
  2         5  
  2         12  
239             extends 'Cfn::Value::TypedValue';
240            
241             has EBSEnabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
242             has Iops => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
243             has VolumeSize => (isa => 'Cfn::Value::Integer', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
244             has VolumeType => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
245             }
246              
247             subtype 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::DomainEndpointOptions',
248             as 'Cfn::Value';
249              
250             coerce 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::DomainEndpointOptions',
251             from 'HashRef',
252             via {
253             if (my $f = Cfn::TypeLibrary::try_function($_)) {
254             return $f
255             } else {
256             return Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::DomainEndpointOptions->new( %$_ );
257             }
258             };
259              
260             package Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::DomainEndpointOptions {
261 2     2   6898 use Moose;
  2         8  
  2         11  
262 2     2   13846 use MooseX::StrictConstructor;
  2         4  
  2         15  
263             extends 'Cfn::Value::TypedValue';
264            
265             has EnforceHTTPS => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
266             has TLSSecurityPolicy => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
267             }
268              
269             subtype 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::CognitoOptions',
270             as 'Cfn::Value';
271              
272             coerce 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::CognitoOptions',
273             from 'HashRef',
274             via {
275             if (my $f = Cfn::TypeLibrary::try_function($_)) {
276             return $f
277             } else {
278             return Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::CognitoOptions->new( %$_ );
279             }
280             };
281              
282             package Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::CognitoOptions {
283 2     2   6992 use Moose;
  2         5  
  2         11  
284 2     2   13511 use MooseX::StrictConstructor;
  2         6  
  2         12  
285             extends 'Cfn::Value::TypedValue';
286            
287             has Enabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
288             has IdentityPoolId => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
289             has RoleArn => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
290             has UserPoolId => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
291             }
292              
293             subtype 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::AdvancedSecurityOptionsInput',
294             as 'Cfn::Value';
295              
296             coerce 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::AdvancedSecurityOptionsInput',
297             from 'HashRef',
298             via {
299             if (my $f = Cfn::TypeLibrary::try_function($_)) {
300             return $f
301             } else {
302             return Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::AdvancedSecurityOptionsInput->new( %$_ );
303             }
304             };
305              
306             package Cfn::Resource::Properties::Object::AWS::Elasticsearch::Domain::AdvancedSecurityOptionsInput {
307 2     2   6845 use Moose;
  2         4  
  2         15  
308 2     2   13299 use MooseX::StrictConstructor;
  2         6  
  2         12  
309             extends 'Cfn::Value::TypedValue';
310            
311             has Enabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
312             has InternalUserDatabaseEnabled => (isa => 'Cfn::Value::Boolean', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
313             has MasterUserOptions => (isa => 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::MasterUserOptions', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
314             }
315              
316             package Cfn::Resource::Properties::AWS::Elasticsearch::Domain {
317 2     2   6672 use Moose;
  2         7  
  2         15  
318 2     2   13287 use MooseX::StrictConstructor;
  2         5  
  2         14  
319             extends 'Cfn::Resource::Properties';
320            
321             has AccessPolicies => (isa => 'Cfn::Value::Json|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
322             has AdvancedOptions => (isa => 'Cfn::Value::Hash|Cfn::DynamicValue', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
323             has AdvancedSecurityOptions => (isa => 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::AdvancedSecurityOptionsInput', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
324             has CognitoOptions => (isa => 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::CognitoOptions', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
325             has DomainEndpointOptions => (isa => 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::DomainEndpointOptions', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
326             has DomainName => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
327             has EBSOptions => (isa => 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::EBSOptions', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
328             has ElasticsearchClusterConfig => (isa => 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::ElasticsearchClusterConfig', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
329             has ElasticsearchVersion => (isa => 'Cfn::Value::String', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Conditional');
330             has EncryptionAtRestOptions => (isa => 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::EncryptionAtRestOptions', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
331             has LogPublishingOptions => (isa => 'MapOfCfn::Resource::Properties::AWS::Elasticsearch::Domain::LogPublishingOption', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
332             has NodeToNodeEncryptionOptions => (isa => 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::NodeToNodeEncryptionOptions', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Immutable');
333             has SnapshotOptions => (isa => 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::SnapshotOptions', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
334             has Tags => (isa => 'ArrayOfCfn::Resource::Properties::TagType', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
335             has VPCOptions => (isa => 'Cfn::Resource::Properties::AWS::Elasticsearch::Domain::VPCOptions', is => 'rw', coerce => 1, traits => [ 'CfnMutability' ], mutability => 'Mutable');
336             }
337              
338             1;
339             ### main pod documentation begin ###
340              
341             =encoding UTF-8
342              
343             =head1 NAME
344              
345             Cfn::Resource::AWS::Elasticsearch::Domain - Cfn resource for AWS::Elasticsearch::Domain
346              
347             =head1 DESCRIPTION
348              
349             This module implements a Perl module that represents the CloudFormation object AWS::Elasticsearch::Domain.
350              
351             See L<Cfn> for more information on how to use it.
352              
353             =head1 AUTHOR
354              
355             Jose Luis Martinez
356             CAPSiDE
357             jlmartinez@capside.com
358              
359             =head1 COPYRIGHT and LICENSE
360              
361             Copyright (c) 2013 by CAPSiDE
362             This code is distributed under the Apache 2 License. The full text of the
363             license can be found in the LICENSE file included with this module.
364              
365             =cut