File Coverage

blib/lib/Net/Amazon/S3/ACL/Canned.pm
Criterion Covered Total %
statement 25 25 100.0
branch n/a
condition n/a
subroutine 14 14 100.0
pod 7 9 77.7
total 46 48 95.8


line stmt bran cond sub pod time code
1             # ABSTRACT: Representation of canned ACL
2             $Net::Amazon::S3::ACL::Canned::VERSION = '0.991';
3             use Moose 0.85;
4 100     100   106547 use MooseX::StrictConstructor 0.16;
  100         7415282  
  100         608  
5 100     100   553257 use Moose::Util::TypeConstraints;
  100         488763  
  100         594  
6 100     100   376601  
  100         216  
  100         748  
7             use Net::Amazon::S3::Constraint::ACL::Canned;
8 100     100   188359  
  100         257  
  100         2754  
9             use Net::Amazon::S3::Constants;
10 100     100   916  
  100         220  
  100         32909  
11             class_type 'Net::Amazon::S3::ACL::Canned';
12              
13             coerce 'Net::Amazon::S3::ACL::Canned'
14             => from 'Net::Amazon::S3::Constraint::ACL::Canned'
15             => via { Net::Amazon::S3::ACL::Canned->new ($_) }
16             ;
17              
18             around BUILDARGS => sub {
19             my ($orig, $class) = (shift, shift);
20              
21             return +{ canned_acl => $_[0] }
22             if @_ == 1 && ! ref $_[0];
23              
24             return $class->$orig (@_);
25             };
26              
27             has canned_acl => (
28             is => 'ro',
29             isa => 'Net::Amazon::S3::Constraint::ACL::Canned',
30             required => 1,
31             );
32              
33             my ($self) = @_;
34              
35 110     110 0 3493 return +(Net::Amazon::S3::Constants->HEADER_CANNED_ACL => $self->canned_acl);
36             }
37 110         3014  
38              
39             1;
40 16     16 1 22705  
41 2     2 1 2066  
42 2     2 1 2066 =pod
43 2     2 1 10243  
44 2     2 1 5429 =encoding UTF-8
45 2     2 1 2082  
46 2     2 1 2169 =head1 NAME
47 2     2 0 2057  
48             Net::Amazon::S3::ACL::Canned - Representation of canned ACL
49              
50             =head1 VERSION
51              
52             version 0.991
53              
54             =head1 SYNOPSIS
55              
56             my $acl = Net::Amazon::S3::ACL::Canned->PRIVATE;
57             my $acl = Net::Amazon::S3::ACL::Canned->PUBLIC_READ;
58              
59             =head1 DESCRIPTION
60              
61             Class representes predefined Amazon S3 canned ACL.
62              
63             =head1 FACTORY BUILDERS
64              
65             =head2 PRIVATE
66              
67             =head2 PUBLIC_READ
68              
69             =head2 PUBLIC_READ_WRITE
70              
71             =head2 AWS_EXEC_READ
72              
73             =head2 AUTHENTICATED_READ
74              
75             =head2 BUCKET_OWNER_READ
76              
77             =head2 BUCKET_OWNER_FULL_CONTROL
78              
79             =head2 LOG_DELIVER_WRITE
80              
81             =head1 AUTHOR
82              
83             Branislav Zahradník <barney@cpan.org>
84              
85             =head1 COPYRIGHT AND LICENSE
86              
87             This module is part of L<Net::Amazon::S3>.
88              
89             =head1 AUTHOR
90              
91             Branislav Zahradník <barney@cpan.org>
92              
93             =head1 COPYRIGHT AND LICENSE
94              
95             This software is copyright (c) 2022 by Amazon Digital Services, Leon Brocard, Brad Fitzpatrick, Pedro Figueiredo, Rusty Conover, Branislav Zahradník.
96              
97             This is free software; you can redistribute it and/or modify it under
98             the same terms as the Perl 5 programming language system itself.
99              
100             =cut