/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the elastictranscoder-2012-09-25.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.ElasticTranscoder.Model
{
///
/// The pipeline (queue) that is used to manage jobs.
///
public partial class Pipeline
{
private string _arn;
private string _awsKmsKeyArn;
private PipelineOutputConfig _contentConfig;
private string _id;
private string _inputBucket;
private string _name;
private Notifications _notifications;
private string _outputBucket;
private string _role;
private string _status;
private PipelineOutputConfig _thumbnailConfig;
///
/// Gets and sets the property Arn.
///
/// The Amazon Resource Name (ARN) for the pipeline.
///
///
public string Arn
{
get { return this._arn; }
set { this._arn = value; }
}
// Check to see if Arn property is set
internal bool IsSetArn()
{
return this._arn != null;
}
///
/// Gets and sets the property AwsKmsKeyArn.
///
/// The AWS Key Management Service (AWS KMS) key that you want to use with this pipeline.
///
///
///
/// If you use either s3
or s3-aws-kms
as your Encryption:Mode
,
/// you don't need to provide a key with your job because a default key, known as an AWS-KMS
/// key, is created for you automatically. You need to provide an AWS-KMS key only if
/// you want to use a non-default AWS-KMS key, or if you are using an Encryption:Mode
/// of aes-cbc-pkcs7
, aes-ctr
, or aes-gcm
.
///
///
[AWSProperty(Min=0, Max=255)]
public string AwsKmsKeyArn
{
get { return this._awsKmsKeyArn; }
set { this._awsKmsKeyArn = value; }
}
// Check to see if AwsKmsKeyArn property is set
internal bool IsSetAwsKmsKeyArn()
{
return this._awsKmsKeyArn != null;
}
///
/// Gets and sets the property ContentConfig.
///
/// Information about the Amazon S3 bucket in which you want Elastic Transcoder to save
/// transcoded files and playlists. Either you specify both ContentConfig
/// and ThumbnailConfig
, or you specify OutputBucket
.
///
/// -
///
/// Bucket: The Amazon S3 bucket in which you want Elastic Transcoder to save
/// transcoded files and playlists.
///
///
-
///
/// Permissions: A list of the users and/or predefined Amazon S3 groups you want
/// to have access to transcoded files and playlists, and the type of access that you
/// want them to have.
///
///
-
///
/// GranteeType: The type of value that appears in the
Grantee
object:
///
/// -
///
///
Canonical
: Either the canonical user ID for an AWS account or an origin
/// access identity for an Amazon CloudFront distribution.
///
/// -
///
///
Email
: The registered email address of an AWS account.
///
/// -
///
///
Group
: One of the following predefined Amazon S3 groups: AllUsers
,
/// AuthenticatedUsers
, or LogDelivery
.
///
///
-
///
///
Grantee
: The AWS user or group that you want to have access to transcoded
/// files and playlists.
///
/// -
///
///
Access
: The permission that you want to give to the AWS user that is
/// listed in Grantee
. Valid values include:
///
/// -
///
///
READ
: The grantee can read the objects and metadata for objects that
/// Elastic Transcoder adds to the Amazon S3 bucket.
///
/// -
///
///
READ_ACP
: The grantee can read the object ACL for objects that Elastic
/// Transcoder adds to the Amazon S3 bucket.
///
/// -
///
///
WRITE_ACP
: The grantee can write the ACL for the objects that Elastic
/// Transcoder adds to the Amazon S3 bucket.
///
/// -
///
///
FULL_CONTROL
: The grantee has READ
, READ_ACP
,
/// and WRITE_ACP
permissions for the objects that Elastic Transcoder adds
/// to the Amazon S3 bucket.
///
///
-
///
/// StorageClass: The Amazon S3 storage class, Standard or ReducedRedundancy,
/// that you want Elastic Transcoder to assign to the video files and playlists that it
/// stores in your Amazon S3 bucket.
///
///
///
public PipelineOutputConfig ContentConfig
{
get { return this._contentConfig; }
set { this._contentConfig = value; }
}
// Check to see if ContentConfig property is set
internal bool IsSetContentConfig()
{
return this._contentConfig != null;
}
///
/// Gets and sets the property Id.
///
/// The identifier for the pipeline. You use this value to identify the pipeline in which
/// you want to perform a variety of operations, such as creating a job or a preset.
///
///
public string Id
{
get { return this._id; }
set { this._id = value; }
}
// Check to see if Id property is set
internal bool IsSetId()
{
return this._id != null;
}
///
/// Gets and sets the property InputBucket.
///
/// The Amazon S3 bucket from which Elastic Transcoder gets media files for transcoding
/// and the graphics files, if any, that you want to use for watermarks.
///
///
public string InputBucket
{
get { return this._inputBucket; }
set { this._inputBucket = value; }
}
// Check to see if InputBucket property is set
internal bool IsSetInputBucket()
{
return this._inputBucket != null;
}
///
/// Gets and sets the property Name.
///
/// The name of the pipeline. We recommend that the name be unique within the AWS account,
/// but uniqueness is not enforced.
///
///
///
/// Constraints: Maximum 40 characters
///
///
[AWSProperty(Min=1, Max=40)]
public string Name
{
get { return this._name; }
set { this._name = value; }
}
// Check to see if Name property is set
internal bool IsSetName()
{
return this._name != null;
}
///
/// Gets and sets the property Notifications.
///
/// The Amazon Simple Notification Service (Amazon SNS) topic that you want to notify
/// to report job status.
///
///
///
/// To receive notifications, you must also subscribe to the new topic in the Amazon SNS
/// console.
///
/// -
///
/// Progressing (optional): The Amazon Simple Notification Service (Amazon SNS)
/// topic that you want to notify when Elastic Transcoder has started to process the job.
///
///
-
///
/// Complete (optional): The Amazon SNS topic that you want to notify when Elastic
/// Transcoder has finished processing the job.
///
///
-
///
/// Warning (optional): The Amazon SNS topic that you want to notify when Elastic
/// Transcoder encounters a warning condition.
///
///
-
///
/// Error (optional): The Amazon SNS topic that you want to notify when Elastic
/// Transcoder encounters an error condition.
///
///
///
public Notifications Notifications
{
get { return this._notifications; }
set { this._notifications = value; }
}
// Check to see if Notifications property is set
internal bool IsSetNotifications()
{
return this._notifications != null;
}
///
/// Gets and sets the property OutputBucket.
///
/// The Amazon S3 bucket in which you want Elastic Transcoder to save transcoded files,
/// thumbnails, and playlists. Either you specify this value, or you specify both ContentConfig
/// and ThumbnailConfig
.
///
///
public string OutputBucket
{
get { return this._outputBucket; }
set { this._outputBucket = value; }
}
// Check to see if OutputBucket property is set
internal bool IsSetOutputBucket()
{
return this._outputBucket != null;
}
///
/// Gets and sets the property Role.
///
/// The IAM Amazon Resource Name (ARN) for the role that Elastic Transcoder uses to transcode
/// jobs for this pipeline.
///
///
public string Role
{
get { return this._role; }
set { this._role = value; }
}
// Check to see if Role property is set
internal bool IsSetRole()
{
return this._role != null;
}
///
/// Gets and sets the property Status.
///
/// The current status of the pipeline:
///
/// -
///
///
Active
: The pipeline is processing jobs.
///
/// -
///
///
Paused
: The pipeline is not currently processing jobs.
///
///
///
public string Status
{
get { return this._status; }
set { this._status = value; }
}
// Check to see if Status property is set
internal bool IsSetStatus()
{
return this._status != null;
}
///
/// Gets and sets the property ThumbnailConfig.
///
/// Information about the Amazon S3 bucket in which you want Elastic Transcoder to save
/// thumbnail files. Either you specify both ContentConfig
and ThumbnailConfig
,
/// or you specify OutputBucket
.
///
/// -
///
///
Bucket
: The Amazon S3 bucket in which you want Elastic Transcoder to
/// save thumbnail files.
///
/// -
///
///
Permissions
: A list of the users and/or predefined Amazon S3 groups
/// you want to have access to thumbnail files, and the type of access that you want them
/// to have.
///
/// -
///
/// GranteeType: The type of value that appears in the Grantee object:
///
///
-
///
///
Canonical
: Either the canonical user ID for an AWS account or an origin
/// access identity for an Amazon CloudFront distribution.
///
///
///
/// A canonical user ID is not the same as an AWS account number.
///
/// -
///
///
Email
: The registered email address of an AWS account.
///
/// -
///
///
Group
: One of the following predefined Amazon S3 groups: AllUsers
,
/// AuthenticatedUsers
, or LogDelivery
.
///
///
-
///
///
Grantee
: The AWS user or group that you want to have access to thumbnail
/// files.
///
/// -
///
/// Access: The permission that you want to give to the AWS user that is listed in Grantee.
/// Valid values include:
///
///
-
///
///
READ
: The grantee can read the thumbnails and metadata for thumbnails
/// that Elastic Transcoder adds to the Amazon S3 bucket.
///
/// -
///
///
READ_ACP
: The grantee can read the object ACL for thumbnails that Elastic
/// Transcoder adds to the Amazon S3 bucket.
///
/// -
///
///
WRITE_ACP
: The grantee can write the ACL for the thumbnails that Elastic
/// Transcoder adds to the Amazon S3 bucket.
///
/// -
///
///
FULL_CONTROL
: The grantee has READ, READ_ACP, and WRITE_ACP permissions
/// for the thumbnails that Elastic Transcoder adds to the Amazon S3 bucket.
///
///
-
///
///
StorageClass
: The Amazon S3 storage class, Standard
or
/// ReducedRedundancy
, that you want Elastic Transcoder to assign to the
/// thumbnails that it stores in your Amazon S3 bucket.
///
///
///
public PipelineOutputConfig ThumbnailConfig
{
get { return this._thumbnailConfig; }
set { this._thumbnailConfig = value; }
}
// Check to see if ThumbnailConfig property is set
internal bool IsSetThumbnailConfig()
{
return this._thumbnailConfig != null;
}
}
}