File Coverage

blib/lib/Paws/S3/CopyObject.pm
Criterion Covered Total %
statement 12 12 100.0
branch n/a
condition n/a
subroutine 4 4 100.0
pod n/a
total 16 16 100.0


line stmt bran cond sub pod time code
1              
2             package Paws::S3::CopyObject;
3 1     1   470 use Moose;
  1     1   2  
  1         6  
  1         375  
  1         2  
  1         6  
4             has ACL => (is => 'ro', isa => 'Str', header_name => 'x-amz-acl', traits => ['ParamInHeader']);
5             has Bucket => (is => 'ro', isa => 'Str', uri_name => 'Bucket', traits => ['ParamInURI'], required => 1);
6             has CacheControl => (is => 'ro', isa => 'Str', header_name => 'Cache-Control', traits => ['ParamInHeader']);
7             has ContentDisposition => (is => 'ro', isa => 'Str', header_name => 'Content-Disposition', traits => ['ParamInHeader']);
8             has ContentEncoding => (is => 'ro', isa => 'Str', header_name => 'Content-Encoding', traits => ['ParamInHeader']);
9             has ContentLanguage => (is => 'ro', isa => 'Str', header_name => 'Content-Language', traits => ['ParamInHeader']);
10             has ContentType => (is => 'ro', isa => 'Str', header_name => 'Content-Type', traits => ['ParamInHeader']);
11             has CopySource => (is => 'ro', isa => 'Str', header_name => 'x-amz-copy-source', traits => ['ParamInHeader'], required => 1);
12             has CopySourceIfMatch => (is => 'ro', isa => 'Str', header_name => 'x-amz-copy-source-if-match', traits => ['ParamInHeader']);
13             has CopySourceIfModifiedSince => (is => 'ro', isa => 'Str', header_name => 'x-amz-copy-source-if-modified-since', traits => ['ParamInHeader']);
14             has CopySourceIfNoneMatch => (is => 'ro', isa => 'Str', header_name => 'x-amz-copy-source-if-none-match', traits => ['ParamInHeader']);
15             has CopySourceIfUnmodifiedSince => (is => 'ro', isa => 'Str', header_name => 'x-amz-copy-source-if-unmodified-since', traits => ['ParamInHeader']);
16             has CopySourceSSECustomerAlgorithm => (is => 'ro', isa => 'Str', header_name => 'x-amz-copy-source-server-side-encryption-customer-algorithm', traits => ['ParamInHeader']);
17             has CopySourceSSECustomerKey => (is => 'ro', isa => 'Str', header_name => 'x-amz-copy-source-server-side-encryption-customer-key', traits => ['ParamInHeader']);
18             has CopySourceSSECustomerKeyMD5 => (is => 'ro', isa => 'Str', header_name => 'x-amz-copy-source-server-side-encryption-customer-key-MD5', traits => ['ParamInHeader']);
19             has Expires => (is => 'ro', isa => 'Str', header_name => 'Expires', traits => ['ParamInHeader']);
20             has GrantFullControl => (is => 'ro', isa => 'Str', header_name => 'x-amz-grant-full-control', traits => ['ParamInHeader']);
21             has GrantRead => (is => 'ro', isa => 'Str', header_name => 'x-amz-grant-read', traits => ['ParamInHeader']);
22             has GrantReadACP => (is => 'ro', isa => 'Str', header_name => 'x-amz-grant-read-acp', traits => ['ParamInHeader']);
23             has GrantWriteACP => (is => 'ro', isa => 'Str', header_name => 'x-amz-grant-write-acp', traits => ['ParamInHeader']);
24             has Key => (is => 'ro', isa => 'Str', uri_name => 'Key', traits => ['ParamInURI'], required => 1);
25             has Metadata => (is => 'ro', isa => 'Paws::S3::Metadata', header_prefix => 'x-amz-meta-', traits => ['ParamInHeaders']);
26             has MetadataDirective => (is => 'ro', isa => 'Str', header_name => 'x-amz-metadata-directive', traits => ['ParamInHeader']);
27             has RequestPayer => (is => 'ro', isa => 'Str', header_name => 'x-amz-request-payer', traits => ['ParamInHeader']);
28             has ServerSideEncryption => (is => 'ro', isa => 'Str', header_name => 'x-amz-server-side-encryption', traits => ['ParamInHeader']);
29             has SSECustomerAlgorithm => (is => 'ro', isa => 'Str', header_name => 'x-amz-server-side-encryption-customer-algorithm', traits => ['ParamInHeader']);
30             has SSECustomerKey => (is => 'ro', isa => 'Str', header_name => 'x-amz-server-side-encryption-customer-key', traits => ['ParamInHeader']);
31             has SSECustomerKeyMD5 => (is => 'ro', isa => 'Str', header_name => 'x-amz-server-side-encryption-customer-key-MD5', traits => ['ParamInHeader']);
32             has SSEKMSKeyId => (is => 'ro', isa => 'Str', header_name => 'x-amz-server-side-encryption-aws-kms-key-id', traits => ['ParamInHeader']);
33             has StorageClass => (is => 'ro', isa => 'Str', header_name => 'x-amz-storage-class', traits => ['ParamInHeader']);
34             has Tagging => (is => 'ro', isa => 'Str', header_name => 'x-amz-tagging', traits => ['ParamInHeader']);
35             has TaggingDirective => (is => 'ro', isa => 'Str', header_name => 'x-amz-tagging-directive', traits => ['ParamInHeader']);
36             has WebsiteRedirectLocation => (is => 'ro', isa => 'Str', header_name => 'x-amz-website-redirect-location', traits => ['ParamInHeader']);
37              
38 1     1   6360 use MooseX::ClassAttribute;
  1     1   3  
  1         7  
  1         5951  
  1         2  
  1         6  
39              
40             class_has _api_call => (isa => 'Str', is => 'ro', default => 'CopyObject');
41             class_has _api_uri => (isa => 'Str', is => 'ro', default => '/{Bucket}/{Key+}');
42             class_has _api_method => (isa => 'Str', is => 'ro', default => 'PUT');
43             class_has _returns => (isa => 'Str', is => 'ro', default => 'Paws::S3::CopyObjectOutput');
44             class_has _result_key => (isa => 'Str', is => 'ro');
45            
46             1;
47              
48             ### main pod documentation begin ###
49              
50             =head1 NAME
51              
52             Paws::S3::CopyObject - Arguments for method CopyObject on Paws::S3
53              
54             =head1 DESCRIPTION
55              
56             This class represents the parameters used for calling the method CopyObject on the
57             Amazon Simple Storage Service service. Use the attributes of this class
58             as arguments to method CopyObject.
59              
60             You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CopyObject.
61              
62             As an example:
63              
64             $service_obj->CopyObject(Att1 => $value1, Att2 => $value2, ...);
65              
66             Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object.
67              
68             =head1 ATTRIBUTES
69              
70              
71             =head2 ACL => Str
72              
73             The canned ACL to apply to the object.
74              
75             Valid values are: C<"private">, C<"public-read">, C<"public-read-write">, C<"authenticated-read">, C<"aws-exec-read">, C<"bucket-owner-read">, C<"bucket-owner-full-control">
76              
77             =head2 B<REQUIRED> Bucket => Str
78              
79              
80              
81              
82              
83             =head2 CacheControl => Str
84              
85             Specifies caching behavior along the request/reply chain.
86              
87              
88              
89             =head2 ContentDisposition => Str
90              
91             Specifies presentational information for the object.
92              
93              
94              
95             =head2 ContentEncoding => Str
96              
97             Specifies what content encodings have been applied to the object and
98             thus what decoding mechanisms must be applied to obtain the media-type
99             referenced by the Content-Type header field.
100              
101              
102              
103             =head2 ContentLanguage => Str
104              
105             The language the content is in.
106              
107              
108              
109             =head2 ContentType => Str
110              
111             A standard MIME type describing the format of the object data.
112              
113              
114              
115             =head2 B<REQUIRED> CopySource => Str
116              
117             The name of the source bucket and key name of the source object,
118             separated by a slash (/). Must be URL-encoded.
119              
120              
121              
122             =head2 CopySourceIfMatch => Str
123              
124             Copies the object if its entity tag (ETag) matches the specified tag.
125              
126              
127              
128             =head2 CopySourceIfModifiedSince => Str
129              
130             Copies the object if it has been modified since the specified time.
131              
132              
133              
134             =head2 CopySourceIfNoneMatch => Str
135              
136             Copies the object if its entity tag (ETag) is different than the
137             specified ETag.
138              
139              
140              
141             =head2 CopySourceIfUnmodifiedSince => Str
142              
143             Copies the object if it hasn't been modified since the specified time.
144              
145              
146              
147             =head2 CopySourceSSECustomerAlgorithm => Str
148              
149             Specifies the algorithm to use when decrypting the source object (e.g.,
150             AES256).
151              
152              
153              
154             =head2 CopySourceSSECustomerKey => Str
155              
156             Specifies the customer-provided encryption key for Amazon S3 to use to
157             decrypt the source object. The encryption key provided in this header
158             must be one that was used when the source object was created.
159              
160              
161              
162             =head2 CopySourceSSECustomerKeyMD5 => Str
163              
164             Specifies the 128-bit MD5 digest of the encryption key according to RFC
165             1321. Amazon S3 uses this header for a message integrity check to
166             ensure the encryption key was transmitted without error.
167              
168              
169              
170             =head2 Expires => Str
171              
172             The date and time at which the object is no longer cacheable.
173              
174              
175              
176             =head2 GrantFullControl => Str
177              
178             Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the
179             object.
180              
181              
182              
183             =head2 GrantRead => Str
184              
185             Allows grantee to read the object data and its metadata.
186              
187              
188              
189             =head2 GrantReadACP => Str
190              
191             Allows grantee to read the object ACL.
192              
193              
194              
195             =head2 GrantWriteACP => Str
196              
197             Allows grantee to write the ACL for the applicable object.
198              
199              
200              
201             =head2 B<REQUIRED> Key => Str
202              
203              
204              
205              
206              
207             =head2 Metadata => L<Paws::S3::Metadata>
208              
209             A map of metadata to store with the object in S3.
210              
211              
212              
213             =head2 MetadataDirective => Str
214              
215             Specifies whether the metadata is copied from the source object or
216             replaced with metadata provided in the request.
217              
218             Valid values are: C<"COPY">, C<"REPLACE">
219              
220             =head2 RequestPayer => Str
221              
222              
223              
224             Valid values are: C<"requester">
225              
226             =head2 ServerSideEncryption => Str
227              
228             The Server-side encryption algorithm used when storing this object in
229             S3 (e.g., AES256, aws:kms).
230              
231             Valid values are: C<"AES256">, C<"aws:kms">
232              
233             =head2 SSECustomerAlgorithm => Str
234              
235             Specifies the algorithm to use to when encrypting the object (e.g.,
236             AES256).
237              
238              
239              
240             =head2 SSECustomerKey => Str
241              
242             Specifies the customer-provided encryption key for Amazon S3 to use in
243             encrypting data. This value is used to store the object and then it is
244             discarded; Amazon does not store the encryption key. The key must be
245             appropriate for use with the algorithm specified in the
246             x-amz-server-side-encryption-customer-algorithm header.
247              
248              
249              
250             =head2 SSECustomerKeyMD5 => Str
251              
252             Specifies the 128-bit MD5 digest of the encryption key according to RFC
253             1321. Amazon S3 uses this header for a message integrity check to
254             ensure the encryption key was transmitted without error.
255              
256              
257              
258             =head2 SSEKMSKeyId => Str
259              
260             Specifies the AWS KMS key ID to use for object encryption. All GET and
261             PUT requests for an object protected by AWS KMS will fail if not made
262             via SSL or using SigV4. Documentation on configuring any of the
263             officially supported AWS SDKs and CLI can be found at
264             http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
265              
266              
267              
268             =head2 StorageClass => Str
269              
270             The type of storage to use for the object. Defaults to 'STANDARD'.
271              
272             Valid values are: C<"STANDARD">, C<"REDUCED_REDUNDANCY">, C<"STANDARD_IA">
273              
274             =head2 Tagging => Str
275              
276             The tag-set for the object destination object this value must be used
277             in conjunction with the TaggingDirective. The tag-set must be encoded
278             as URL Query parameters
279              
280              
281              
282             =head2 TaggingDirective => Str
283              
284             Specifies whether the object tag-set are copied from the source object
285             or replaced with tag-set provided in the request.
286              
287             Valid values are: C<"COPY">, C<"REPLACE">
288              
289             =head2 WebsiteRedirectLocation => Str
290              
291             If the bucket is configured as a website, redirects requests for this
292             object to another object in the same bucket or to an external URL.
293             Amazon S3 stores the value of this header in the object metadata.
294              
295              
296              
297              
298             =head1 SEE ALSO
299              
300             This class forms part of L<Paws>, documenting arguments for method CopyObject in L<Paws::S3>
301              
302             =head1 BUGS and CONTRIBUTIONS
303              
304             The source code is located here: https://github.com/pplu/aws-sdk-perl
305              
306             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
307              
308             =cut
309