File Coverage

blib/lib/Paws/ElasticTranscoder/CreatePipeline.pm
Criterion Covered Total %
statement 6 6 100.0
branch n/a
condition n/a
subroutine 2 2 100.0
pod n/a
total 8 8 100.0


line stmt bran cond sub pod time code
1              
2             package Paws::ElasticTranscoder::CreatePipeline;
3 1     1   484 use Moose;
  1         2  
  1         6  
4             has AwsKmsKeyArn => (is => 'ro', isa => 'Str');
5             has ContentConfig => (is => 'ro', isa => 'Paws::ElasticTranscoder::PipelineOutputConfig');
6             has InputBucket => (is => 'ro', isa => 'Str', required => 1);
7             has Name => (is => 'ro', isa => 'Str', required => 1);
8             has Notifications => (is => 'ro', isa => 'Paws::ElasticTranscoder::Notifications');
9             has OutputBucket => (is => 'ro', isa => 'Str');
10             has Role => (is => 'ro', isa => 'Str', required => 1);
11             has ThumbnailConfig => (is => 'ro', isa => 'Paws::ElasticTranscoder::PipelineOutputConfig');
12              
13 1     1   6176 use MooseX::ClassAttribute;
  1         2  
  1         9  
14              
15             class_has _api_call => (isa => 'Str', is => 'ro', default => 'CreatePipeline');
16             class_has _api_uri => (isa => 'Str', is => 'ro', default => '/2012-09-25/pipelines');
17             class_has _api_method => (isa => 'Str', is => 'ro', default => 'POST');
18             class_has _returns => (isa => 'Str', is => 'ro', default => 'Paws::ElasticTranscoder::CreatePipelineResponse');
19             class_has _result_key => (isa => 'Str', is => 'ro');
20             1;
21              
22             ### main pod documentation begin ###
23              
24             =head1 NAME
25              
26             Paws::ElasticTranscoder::CreatePipeline - Arguments for method CreatePipeline on Paws::ElasticTranscoder
27              
28             =head1 DESCRIPTION
29              
30             This class represents the parameters used for calling the method CreatePipeline on the
31             Amazon Elastic Transcoder service. Use the attributes of this class
32             as arguments to method CreatePipeline.
33              
34             You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CreatePipeline.
35              
36             As an example:
37              
38             $service_obj->CreatePipeline(Att1 => $value1, Att2 => $value2, ...);
39              
40             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.
41              
42             =head1 ATTRIBUTES
43              
44              
45             =head2 AwsKmsKeyArn => Str
46              
47             The AWS Key Management Service (AWS KMS) key that you want to use with
48             this pipeline.
49              
50             If you use either C<S3> or C<S3-AWS-KMS> as your C<Encryption:Mode>,
51             you don't need to provide a key with your job because a default key,
52             known as an AWS-KMS key, is created for you automatically. You need to
53             provide an AWS-KMS key only if you want to use a non-default AWS-KMS
54             key, or if you are using an C<Encryption:Mode> of C<AES-PKCS7>,
55             C<AES-CTR>, or C<AES-GCM>.
56              
57              
58              
59             =head2 ContentConfig => L<Paws::ElasticTranscoder::PipelineOutputConfig>
60              
61             The optional C<ContentConfig> object specifies information about the
62             Amazon S3 bucket in which you want Elastic Transcoder to save
63             transcoded files and playlists: which bucket to use, which users you
64             want to have access to the files, the type of access you want users to
65             have, and the storage class that you want to assign to the files.
66              
67             If you specify values for C<ContentConfig>, you must also specify
68             values for C<ThumbnailConfig>.
69              
70             If you specify values for C<ContentConfig> and C<ThumbnailConfig>, omit
71             the C<OutputBucket> object.
72              
73             =over
74              
75             =item *
76              
77             B<Bucket>: The Amazon S3 bucket in which you want Elastic Transcoder to
78             save transcoded files and playlists.
79              
80             =item *
81              
82             B<Permissions> (Optional): The Permissions object specifies which users
83             you want to have access to transcoded files and the type of access you
84             want them to have. You can grant permissions to a maximum of 30 users
85             and/or predefined Amazon S3 groups.
86              
87             =item *
88              
89             B<Grantee Type>: Specify the type of value that appears in the
90             C<Grantee> object:
91              
92             =over
93              
94             =item *
95              
96             B<Canonical>: The value in the C<Grantee> object is either the
97             canonical user ID for an AWS account or an origin access identity for
98             an Amazon CloudFront distribution. For more information about canonical
99             user IDs, see Access Control List (ACL) Overview in the Amazon Simple
100             Storage Service Developer Guide. For more information about using
101             CloudFront origin access identities to require that users use
102             CloudFront URLs instead of Amazon S3 URLs, see Using an Origin Access
103             Identity to Restrict Access to Your Amazon S3 Content.
104              
105             A canonical user ID is not the same as an AWS account number.
106              
107             =item *
108              
109             B<Email>: The value in the C<Grantee> object is the registered email
110             address of an AWS account.
111              
112             =item *
113              
114             B<Group>: The value in the C<Grantee> object is one of the following
115             predefined Amazon S3 groups: C<AllUsers>, C<AuthenticatedUsers>, or
116             C<LogDelivery>.
117              
118             =back
119              
120             =item *
121              
122             B<Grantee>: The AWS user or group that you want to have access to
123             transcoded files and playlists. To identify the user or group, you can
124             specify the canonical user ID for an AWS account, an origin access
125             identity for a CloudFront distribution, the registered email address of
126             an AWS account, or a predefined Amazon S3 group
127              
128             =item *
129              
130             B<Access>: The permission that you want to give to the AWS user that
131             you specified in C<Grantee>. Permissions are granted on the files that
132             Elastic Transcoder adds to the bucket, including playlists and video
133             files. Valid values include:
134              
135             =over
136              
137             =item *
138              
139             C<READ>: The grantee can read the objects and metadata for objects that
140             Elastic Transcoder adds to the Amazon S3 bucket.
141              
142             =item *
143              
144             C<READ_ACP>: The grantee can read the object ACL for objects that
145             Elastic Transcoder adds to the Amazon S3 bucket.
146              
147             =item *
148              
149             C<WRITE_ACP>: The grantee can write the ACL for the objects that
150             Elastic Transcoder adds to the Amazon S3 bucket.
151              
152             =item *
153              
154             C<FULL_CONTROL>: The grantee has C<READ>, C<READ_ACP>, and C<WRITE_ACP>
155             permissions for the objects that Elastic Transcoder adds to the Amazon
156             S3 bucket.
157              
158             =back
159              
160             =item *
161              
162             B<StorageClass>: The Amazon S3 storage class, C<Standard> or
163             C<ReducedRedundancy>, that you want Elastic Transcoder to assign to the
164             video files and playlists that it stores in your Amazon S3 bucket.
165              
166             =back
167              
168              
169              
170              
171             =head2 B<REQUIRED> InputBucket => Str
172              
173             The Amazon S3 bucket in which you saved the media files that you want
174             to transcode.
175              
176              
177              
178             =head2 B<REQUIRED> Name => Str
179              
180             The name of the pipeline. We recommend that the name be unique within
181             the AWS account, but uniqueness is not enforced.
182              
183             Constraints: Maximum 40 characters.
184              
185              
186              
187             =head2 Notifications => L<Paws::ElasticTranscoder::Notifications>
188              
189             The Amazon Simple Notification Service (Amazon SNS) topic that you want
190             to notify to report job status.
191              
192             To receive notifications, you must also subscribe to the new topic in
193             the Amazon SNS console.
194              
195             =over
196              
197             =item *
198              
199             B<Progressing>: The topic ARN for the Amazon Simple Notification
200             Service (Amazon SNS) topic that you want to notify when Elastic
201             Transcoder has started to process a job in this pipeline. This is the
202             ARN that Amazon SNS returned when you created the topic. For more
203             information, see Create a Topic in the Amazon Simple Notification
204             Service Developer Guide.
205              
206             =item *
207              
208             B<Completed>: The topic ARN for the Amazon SNS topic that you want to
209             notify when Elastic Transcoder has finished processing a job in this
210             pipeline. This is the ARN that Amazon SNS returned when you created the
211             topic.
212              
213             =item *
214              
215             B<Warning>: The topic ARN for the Amazon SNS topic that you want to
216             notify when Elastic Transcoder encounters a warning condition while
217             processing a job in this pipeline. This is the ARN that Amazon SNS
218             returned when you created the topic.
219              
220             =item *
221              
222             B<Error>: The topic ARN for the Amazon SNS topic that you want to
223             notify when Elastic Transcoder encounters an error condition while
224             processing a job in this pipeline. This is the ARN that Amazon SNS
225             returned when you created the topic.
226              
227             =back
228              
229              
230              
231              
232             =head2 OutputBucket => Str
233              
234             The Amazon S3 bucket in which you want Elastic Transcoder to save the
235             transcoded files. (Use this, or use ContentConfig:Bucket plus
236             ThumbnailConfig:Bucket.)
237              
238             Specify this value when all of the following are true:
239              
240             =over
241              
242             =item *
243              
244             You want to save transcoded files, thumbnails (if any), and playlists
245             (if any) together in one bucket.
246              
247             =item *
248              
249             You do not want to specify the users or groups who have access to the
250             transcoded files, thumbnails, and playlists.
251              
252             =item *
253              
254             You do not want to specify the permissions that Elastic Transcoder
255             grants to the files.
256              
257             When Elastic Transcoder saves files in C<OutputBucket>, it grants full
258             control over the files only to the AWS account that owns the role that
259             is specified by C<Role>.
260              
261             =item *
262              
263             You want to associate the transcoded files and thumbnails with the
264             Amazon S3 Standard storage class.
265              
266             =back
267              
268             If you want to save transcoded files and playlists in one bucket and
269             thumbnails in another bucket, specify which users can access the
270             transcoded files or the permissions the users have, or change the
271             Amazon S3 storage class, omit C<OutputBucket> and specify values for
272             C<ContentConfig> and C<ThumbnailConfig> instead.
273              
274              
275              
276             =head2 B<REQUIRED> Role => Str
277              
278             The IAM Amazon Resource Name (ARN) for the role that you want Elastic
279             Transcoder to use to create the pipeline.
280              
281              
282              
283             =head2 ThumbnailConfig => L<Paws::ElasticTranscoder::PipelineOutputConfig>
284              
285             The C<ThumbnailConfig> object specifies several values, including the
286             Amazon S3 bucket in which you want Elastic Transcoder to save thumbnail
287             files, which users you want to have access to the files, the type of
288             access you want users to have, and the storage class that you want to
289             assign to the files.
290              
291             If you specify values for C<ContentConfig>, you must also specify
292             values for C<ThumbnailConfig> even if you don't want to create
293             thumbnails.
294              
295             If you specify values for C<ContentConfig> and C<ThumbnailConfig>, omit
296             the C<OutputBucket> object.
297              
298             =over
299              
300             =item *
301              
302             B<Bucket>: The Amazon S3 bucket in which you want Elastic Transcoder to
303             save thumbnail files.
304              
305             =item *
306              
307             B<Permissions> (Optional): The C<Permissions> object specifies which
308             users and/or predefined Amazon S3 groups you want to have access to
309             thumbnail files, and the type of access you want them to have. You can
310             grant permissions to a maximum of 30 users and/or predefined Amazon S3
311             groups.
312              
313             =item *
314              
315             B<GranteeType>: Specify the type of value that appears in the Grantee
316             object:
317              
318             =over
319              
320             =item *
321              
322             B<Canonical>: The value in the C<Grantee> object is either the
323             canonical user ID for an AWS account or an origin access identity for
324             an Amazon CloudFront distribution.
325              
326             A canonical user ID is not the same as an AWS account number.
327              
328             =item *
329              
330             B<Email>: The value in the C<Grantee> object is the registered email
331             address of an AWS account.
332              
333             =item *
334              
335             B<Group>: The value in the C<Grantee> object is one of the following
336             predefined Amazon S3 groups: C<AllUsers>, C<AuthenticatedUsers>, or
337             C<LogDelivery>.
338              
339             =back
340              
341             =item *
342              
343             B<Grantee>: The AWS user or group that you want to have access to
344             thumbnail files. To identify the user or group, you can specify the
345             canonical user ID for an AWS account, an origin access identity for a
346             CloudFront distribution, the registered email address of an AWS
347             account, or a predefined Amazon S3 group.
348              
349             =item *
350              
351             B<Access>: The permission that you want to give to the AWS user that
352             you specified in C<Grantee>. Permissions are granted on the thumbnail
353             files that Elastic Transcoder adds to the bucket. Valid values include:
354              
355             =over
356              
357             =item *
358              
359             C<READ>: The grantee can read the thumbnails and metadata for objects
360             that Elastic Transcoder adds to the Amazon S3 bucket.
361              
362             =item *
363              
364             C<READ_ACP>: The grantee can read the object ACL for thumbnails that
365             Elastic Transcoder adds to the Amazon S3 bucket.
366              
367             =item *
368              
369             C<WRITE_ACP>: The grantee can write the ACL for the thumbnails that
370             Elastic Transcoder adds to the Amazon S3 bucket.
371              
372             =item *
373              
374             C<FULL_CONTROL>: The grantee has C<READ>, C<READ_ACP>, and C<WRITE_ACP>
375             permissions for the thumbnails that Elastic Transcoder adds to the
376             Amazon S3 bucket.
377              
378             =back
379              
380             =item *
381              
382             B<StorageClass>: The Amazon S3 storage class, C<Standard> or
383             C<ReducedRedundancy>, that you want Elastic Transcoder to assign to the
384             thumbnails that it stores in your Amazon S3 bucket.
385              
386             =back
387              
388              
389              
390              
391              
392             =head1 SEE ALSO
393              
394             This class forms part of L<Paws>, documenting arguments for method CreatePipeline in L<Paws::ElasticTranscoder>
395              
396             =head1 BUGS and CONTRIBUTIONS
397              
398             The source code is located here: https://github.com/pplu/aws-sdk-perl
399              
400             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
401              
402             =cut
403