File Coverage

blib/lib/Paws/CloudFront/GeoRestriction.pm
Criterion Covered Total %
statement 3 3 100.0
branch n/a
condition n/a
subroutine 1 1 100.0
pod n/a
total 4 4 100.0


line stmt bran cond sub pod time code
1             package Paws::CloudFront::GeoRestriction;
2 1     1   713 use Moose;
  1         3  
  1         8  
3             has Items => (is => 'ro', isa => 'ArrayRef[Str|Undef]', request_name => 'Location', traits => ['NameInRequest']);
4             has Quantity => (is => 'ro', isa => 'Int', required => 1);
5             has RestrictionType => (is => 'ro', isa => 'Str', required => 1);
6             1;
7              
8             ### main pod documentation begin ###
9              
10             =head1 NAME
11              
12             Paws::CloudFront::GeoRestriction
13              
14             =head1 USAGE
15              
16             This class represents one of two things:
17              
18             =head3 Arguments in a call to a service
19              
20             Use the attributes of this class as arguments to methods. You shouldn't make instances of this class.
21             Each attribute should be used as a named argument in the calls that expect this type of object.
22              
23             As an example, if Att1 is expected to be a Paws::CloudFront::GeoRestriction object:
24              
25             $service_obj->Method(Att1 => { Items => $value, ..., RestrictionType => $value });
26              
27             =head3 Results returned from an API call
28              
29             Use accessors for each attribute. If Att1 is expected to be an Paws::CloudFront::GeoRestriction object:
30              
31             $result = $service_obj->Method(...);
32             $result->Att1->Items
33              
34             =head1 DESCRIPTION
35              
36             A complex type that controls the countries in which your content is
37             distributed. CloudFront determines the location of your users using
38             C<MaxMind> GeoIP databases.
39              
40             =head1 ATTRIBUTES
41              
42              
43             =head2 Items => ArrayRef[Str|Undef]
44              
45             A complex type that contains a C<Location> element for each country in
46             which you want CloudFront either to distribute your content
47             (C<whitelist>) or not distribute your content (C<blacklist>).
48              
49             The C<Location> element is a two-letter, uppercase country code for a
50             country that you want to include in your C<blacklist> or C<whitelist>.
51             Include one C<Location> element for each country.
52              
53             CloudFront and C<MaxMind> both use C<ISO 3166> country codes. For the
54             current list of countries and the corresponding codes, see C<ISO
55             3166-1-alpha-2> code on the I<International Organization for
56             Standardization> website. You can also refer to the country list in the
57             CloudFront console, which includes both country names and codes.
58              
59              
60             =head2 B<REQUIRED> Quantity => Int
61              
62             When geo restriction is C<enabled>, this is the number of countries in
63             your C<whitelist> or C<blacklist>. Otherwise, when it is not enabled,
64             C<Quantity> is C<0>, and you can omit C<Items>.
65              
66              
67             =head2 B<REQUIRED> RestrictionType => Str
68              
69             The method that you want to use to restrict distribution of your
70             content by country:
71              
72             =over
73              
74             =item *
75              
76             C<none>: No geo restriction is enabled, meaning access to content is
77             not restricted by client geo location.
78              
79             =item *
80              
81             C<blacklist>: The C<Location> elements specify the countries in which
82             you do not want CloudFront to distribute your content.
83              
84             =item *
85              
86             C<whitelist>: The C<Location> elements specify the countries in which
87             you want CloudFront to distribute your content.
88              
89             =back
90              
91              
92              
93              
94             =head1 SEE ALSO
95              
96             This class forms part of L<Paws>, describing an object used in L<Paws::CloudFront>
97              
98             =head1 BUGS and CONTRIBUTIONS
99              
100             The source code is located here: https://github.com/pplu/aws-sdk-perl
101              
102             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
103              
104             =cut
105