File Coverage

blib/lib/Paws/CloudFront/Headers.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::Headers;
2 1     1   372 use Moose;
  1         3  
  1         6  
3             has Items => (is => 'ro', isa => 'ArrayRef[Str|Undef]', request_name => 'Name', traits => ['NameInRequest']);
4             has Quantity => (is => 'ro', isa => 'Int', required => 1);
5             1;
6              
7             ### main pod documentation begin ###
8              
9             =head1 NAME
10              
11             Paws::CloudFront::Headers
12              
13             =head1 USAGE
14              
15             This class represents one of two things:
16              
17             =head3 Arguments in a call to a service
18              
19             Use the attributes of this class as arguments to methods. You shouldn't make instances of this class.
20             Each attribute should be used as a named argument in the calls that expect this type of object.
21              
22             As an example, if Att1 is expected to be a Paws::CloudFront::Headers object:
23              
24             $service_obj->Method(Att1 => { Items => $value, ..., Quantity => $value });
25              
26             =head3 Results returned from an API call
27              
28             Use accessors for each attribute. If Att1 is expected to be an Paws::CloudFront::Headers object:
29              
30             $result = $service_obj->Method(...);
31             $result->Att1->Items
32              
33             =head1 DESCRIPTION
34              
35             A complex type that specifies the headers that you want CloudFront to
36             forward to the origin for this cache behavior.
37              
38             For the headers that you specify, CloudFront also caches separate
39             versions of a specified object based on the header values in viewer
40             requests. For example, suppose viewer requests for C<logo.jpg> contain
41             a custom C<Product> header that has a value of either C<Acme> or
42             C<Apex>, and you configure CloudFront to cache your content based on
43             values in the C<Product> header. CloudFront forwards the C<Product>
44             header to the origin and caches the response from the origin once for
45             each header value. For more information about caching based on header
46             values, see How CloudFront Forwards and Caches Headers in the I<Amazon
47             CloudFront Developer Guide>.
48              
49             =head1 ATTRIBUTES
50              
51              
52             =head2 Items => ArrayRef[Str|Undef]
53              
54             A complex type that contains one C<Name> element for each header that
55             you want CloudFront to forward to the origin and to vary on for this
56             cache behavior. If C<Quantity> is C<0>, omit C<Items>.
57              
58              
59             =head2 B<REQUIRED> Quantity => Int
60              
61             The number of different headers that you want CloudFront to forward to
62             the origin for this cache behavior. You can configure each cache
63             behavior in a web distribution to do one of the following:
64              
65             =over
66              
67             =item *
68              
69             B<Forward all headers to your origin>: Specify C<1> for C<Quantity> and
70             C<*> for C<Name>.
71              
72             If you configure CloudFront to forward all headers to your origin,
73             CloudFront doesn't cache the objects associated with this cache
74             behavior. Instead, it sends every request to the origin.
75              
76             =item *
77              
78             I<Forward a whitelist of headers you specify>: Specify the number of
79             headers that you want to forward, and specify the header names in
80             C<Name> elements. CloudFront caches your objects based on the values in
81             all of the specified headers. CloudFront also forwards the headers that
82             it forwards by default, but it caches your objects based only on the
83             headers that you specify.
84              
85             =item *
86              
87             B<Forward only the default headers>: Specify C<0> for C<Quantity> and
88             omit C<Items>. In this configuration, CloudFront doesn't cache based on
89             the values in the request headers.
90              
91             =back
92              
93              
94              
95              
96             =head1 SEE ALSO
97              
98             This class forms part of L<Paws>, describing an object used in L<Paws::CloudFront>
99              
100             =head1 BUGS and CONTRIBUTIONS
101              
102             The source code is located here: https://github.com/pplu/aws-sdk-perl
103              
104             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
105              
106             =cut
107