/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace ElasticTranscoder { namespace Model { /** *

The CreatePipelineRequest structure.

See Also:

* AWS * API Reference

*/ class CreatePipelineRequest : public ElasticTranscoderRequest { public: AWS_ELASTICTRANSCODER_API CreatePipelineRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "CreatePipeline"; } AWS_ELASTICTRANSCODER_API Aws::String SerializePayload() const override; /** *

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.

*/ inline const Aws::String& GetName() const{ return m_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.

*/ inline bool NameHasBeenSet() const { return m_nameHasBeenSet; } /** *

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.

*/ inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; } /** *

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.

*/ inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); } /** *

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.

*/ inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); } /** *

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.

*/ inline CreatePipelineRequest& WithName(const Aws::String& value) { SetName(value); return *this;} /** *

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.

*/ inline CreatePipelineRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;} /** *

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.

*/ inline CreatePipelineRequest& WithName(const char* value) { SetName(value); return *this;} /** *

The Amazon S3 bucket in which you saved the media files that you want to * transcode.

*/ inline const Aws::String& GetInputBucket() const{ return m_inputBucket; } /** *

The Amazon S3 bucket in which you saved the media files that you want to * transcode.

*/ inline bool InputBucketHasBeenSet() const { return m_inputBucketHasBeenSet; } /** *

The Amazon S3 bucket in which you saved the media files that you want to * transcode.

*/ inline void SetInputBucket(const Aws::String& value) { m_inputBucketHasBeenSet = true; m_inputBucket = value; } /** *

The Amazon S3 bucket in which you saved the media files that you want to * transcode.

*/ inline void SetInputBucket(Aws::String&& value) { m_inputBucketHasBeenSet = true; m_inputBucket = std::move(value); } /** *

The Amazon S3 bucket in which you saved the media files that you want to * transcode.

*/ inline void SetInputBucket(const char* value) { m_inputBucketHasBeenSet = true; m_inputBucket.assign(value); } /** *

The Amazon S3 bucket in which you saved the media files that you want to * transcode.

*/ inline CreatePipelineRequest& WithInputBucket(const Aws::String& value) { SetInputBucket(value); return *this;} /** *

The Amazon S3 bucket in which you saved the media files that you want to * transcode.

*/ inline CreatePipelineRequest& WithInputBucket(Aws::String&& value) { SetInputBucket(std::move(value)); return *this;} /** *

The Amazon S3 bucket in which you saved the media files that you want to * transcode.

*/ inline CreatePipelineRequest& WithInputBucket(const char* value) { SetInputBucket(value); return *this;} /** *

The Amazon S3 bucket in which you want Elastic Transcoder to save the * transcoded files. (Use this, or use ContentConfig:Bucket plus * ThumbnailConfig:Bucket.)

Specify this value when all of the following are * true:

  • You want to save transcoded files, thumbnails (if any), * and playlists (if any) together in one bucket.

  • You do not want * to specify the users or groups who have access to the transcoded files, * thumbnails, and playlists.

  • You do not want to specify the * permissions that Elastic Transcoder grants to the files.

    *

    When Elastic Transcoder saves files in OutputBucket, it grants * full control over the files only to the AWS account that owns the role that is * specified by Role.

  • You want to * associate the transcoded files and thumbnails with the Amazon S3 Standard * storage class.

If you want to save transcoded files and * playlists in one bucket and thumbnails in another bucket, specify which users * can access the transcoded files or the permissions the users have, or change the * Amazon S3 storage class, omit OutputBucket and specify values for * ContentConfig and ThumbnailConfig instead.

*/ inline const Aws::String& GetOutputBucket() const{ return m_outputBucket; } /** *

The Amazon S3 bucket in which you want Elastic Transcoder to save the * transcoded files. (Use this, or use ContentConfig:Bucket plus * ThumbnailConfig:Bucket.)

Specify this value when all of the following are * true:

  • You want to save transcoded files, thumbnails (if any), * and playlists (if any) together in one bucket.

  • You do not want * to specify the users or groups who have access to the transcoded files, * thumbnails, and playlists.

  • You do not want to specify the * permissions that Elastic Transcoder grants to the files.

    *

    When Elastic Transcoder saves files in OutputBucket, it grants * full control over the files only to the AWS account that owns the role that is * specified by Role.

  • You want to * associate the transcoded files and thumbnails with the Amazon S3 Standard * storage class.

If you want to save transcoded files and * playlists in one bucket and thumbnails in another bucket, specify which users * can access the transcoded files or the permissions the users have, or change the * Amazon S3 storage class, omit OutputBucket and specify values for * ContentConfig and ThumbnailConfig instead.

*/ inline bool OutputBucketHasBeenSet() const { return m_outputBucketHasBeenSet; } /** *

The Amazon S3 bucket in which you want Elastic Transcoder to save the * transcoded files. (Use this, or use ContentConfig:Bucket plus * ThumbnailConfig:Bucket.)

Specify this value when all of the following are * true:

  • You want to save transcoded files, thumbnails (if any), * and playlists (if any) together in one bucket.

  • You do not want * to specify the users or groups who have access to the transcoded files, * thumbnails, and playlists.

  • You do not want to specify the * permissions that Elastic Transcoder grants to the files.

    *

    When Elastic Transcoder saves files in OutputBucket, it grants * full control over the files only to the AWS account that owns the role that is * specified by Role.

  • You want to * associate the transcoded files and thumbnails with the Amazon S3 Standard * storage class.

If you want to save transcoded files and * playlists in one bucket and thumbnails in another bucket, specify which users * can access the transcoded files or the permissions the users have, or change the * Amazon S3 storage class, omit OutputBucket and specify values for * ContentConfig and ThumbnailConfig instead.

*/ inline void SetOutputBucket(const Aws::String& value) { m_outputBucketHasBeenSet = true; m_outputBucket = value; } /** *

The Amazon S3 bucket in which you want Elastic Transcoder to save the * transcoded files. (Use this, or use ContentConfig:Bucket plus * ThumbnailConfig:Bucket.)

Specify this value when all of the following are * true:

  • You want to save transcoded files, thumbnails (if any), * and playlists (if any) together in one bucket.

  • You do not want * to specify the users or groups who have access to the transcoded files, * thumbnails, and playlists.

  • You do not want to specify the * permissions that Elastic Transcoder grants to the files.

    *

    When Elastic Transcoder saves files in OutputBucket, it grants * full control over the files only to the AWS account that owns the role that is * specified by Role.

  • You want to * associate the transcoded files and thumbnails with the Amazon S3 Standard * storage class.

If you want to save transcoded files and * playlists in one bucket and thumbnails in another bucket, specify which users * can access the transcoded files or the permissions the users have, or change the * Amazon S3 storage class, omit OutputBucket and specify values for * ContentConfig and ThumbnailConfig instead.

*/ inline void SetOutputBucket(Aws::String&& value) { m_outputBucketHasBeenSet = true; m_outputBucket = std::move(value); } /** *

The Amazon S3 bucket in which you want Elastic Transcoder to save the * transcoded files. (Use this, or use ContentConfig:Bucket plus * ThumbnailConfig:Bucket.)

Specify this value when all of the following are * true:

  • You want to save transcoded files, thumbnails (if any), * and playlists (if any) together in one bucket.

  • You do not want * to specify the users or groups who have access to the transcoded files, * thumbnails, and playlists.

  • You do not want to specify the * permissions that Elastic Transcoder grants to the files.

    *

    When Elastic Transcoder saves files in OutputBucket, it grants * full control over the files only to the AWS account that owns the role that is * specified by Role.

  • You want to * associate the transcoded files and thumbnails with the Amazon S3 Standard * storage class.

If you want to save transcoded files and * playlists in one bucket and thumbnails in another bucket, specify which users * can access the transcoded files or the permissions the users have, or change the * Amazon S3 storage class, omit OutputBucket and specify values for * ContentConfig and ThumbnailConfig instead.

*/ inline void SetOutputBucket(const char* value) { m_outputBucketHasBeenSet = true; m_outputBucket.assign(value); } /** *

The Amazon S3 bucket in which you want Elastic Transcoder to save the * transcoded files. (Use this, or use ContentConfig:Bucket plus * ThumbnailConfig:Bucket.)

Specify this value when all of the following are * true:

  • You want to save transcoded files, thumbnails (if any), * and playlists (if any) together in one bucket.

  • You do not want * to specify the users or groups who have access to the transcoded files, * thumbnails, and playlists.

  • You do not want to specify the * permissions that Elastic Transcoder grants to the files.

    *

    When Elastic Transcoder saves files in OutputBucket, it grants * full control over the files only to the AWS account that owns the role that is * specified by Role.

  • You want to * associate the transcoded files and thumbnails with the Amazon S3 Standard * storage class.

If you want to save transcoded files and * playlists in one bucket and thumbnails in another bucket, specify which users * can access the transcoded files or the permissions the users have, or change the * Amazon S3 storage class, omit OutputBucket and specify values for * ContentConfig and ThumbnailConfig instead.

*/ inline CreatePipelineRequest& WithOutputBucket(const Aws::String& value) { SetOutputBucket(value); return *this;} /** *

The Amazon S3 bucket in which you want Elastic Transcoder to save the * transcoded files. (Use this, or use ContentConfig:Bucket plus * ThumbnailConfig:Bucket.)

Specify this value when all of the following are * true:

  • You want to save transcoded files, thumbnails (if any), * and playlists (if any) together in one bucket.

  • You do not want * to specify the users or groups who have access to the transcoded files, * thumbnails, and playlists.

  • You do not want to specify the * permissions that Elastic Transcoder grants to the files.

    *

    When Elastic Transcoder saves files in OutputBucket, it grants * full control over the files only to the AWS account that owns the role that is * specified by Role.

  • You want to * associate the transcoded files and thumbnails with the Amazon S3 Standard * storage class.

If you want to save transcoded files and * playlists in one bucket and thumbnails in another bucket, specify which users * can access the transcoded files or the permissions the users have, or change the * Amazon S3 storage class, omit OutputBucket and specify values for * ContentConfig and ThumbnailConfig instead.

*/ inline CreatePipelineRequest& WithOutputBucket(Aws::String&& value) { SetOutputBucket(std::move(value)); return *this;} /** *

The Amazon S3 bucket in which you want Elastic Transcoder to save the * transcoded files. (Use this, or use ContentConfig:Bucket plus * ThumbnailConfig:Bucket.)

Specify this value when all of the following are * true:

  • You want to save transcoded files, thumbnails (if any), * and playlists (if any) together in one bucket.

  • You do not want * to specify the users or groups who have access to the transcoded files, * thumbnails, and playlists.

  • You do not want to specify the * permissions that Elastic Transcoder grants to the files.

    *

    When Elastic Transcoder saves files in OutputBucket, it grants * full control over the files only to the AWS account that owns the role that is * specified by Role.

  • You want to * associate the transcoded files and thumbnails with the Amazon S3 Standard * storage class.

If you want to save transcoded files and * playlists in one bucket and thumbnails in another bucket, specify which users * can access the transcoded files or the permissions the users have, or change the * Amazon S3 storage class, omit OutputBucket and specify values for * ContentConfig and ThumbnailConfig instead.

*/ inline CreatePipelineRequest& WithOutputBucket(const char* value) { SetOutputBucket(value); return *this;} /** *

The IAM Amazon Resource Name (ARN) for the role that you want Elastic * Transcoder to use to create the pipeline.

*/ inline const Aws::String& GetRole() const{ return m_role; } /** *

The IAM Amazon Resource Name (ARN) for the role that you want Elastic * Transcoder to use to create the pipeline.

*/ inline bool RoleHasBeenSet() const { return m_roleHasBeenSet; } /** *

The IAM Amazon Resource Name (ARN) for the role that you want Elastic * Transcoder to use to create the pipeline.

*/ inline void SetRole(const Aws::String& value) { m_roleHasBeenSet = true; m_role = value; } /** *

The IAM Amazon Resource Name (ARN) for the role that you want Elastic * Transcoder to use to create the pipeline.

*/ inline void SetRole(Aws::String&& value) { m_roleHasBeenSet = true; m_role = std::move(value); } /** *

The IAM Amazon Resource Name (ARN) for the role that you want Elastic * Transcoder to use to create the pipeline.

*/ inline void SetRole(const char* value) { m_roleHasBeenSet = true; m_role.assign(value); } /** *

The IAM Amazon Resource Name (ARN) for the role that you want Elastic * Transcoder to use to create the pipeline.

*/ inline CreatePipelineRequest& WithRole(const Aws::String& value) { SetRole(value); return *this;} /** *

The IAM Amazon Resource Name (ARN) for the role that you want Elastic * Transcoder to use to create the pipeline.

*/ inline CreatePipelineRequest& WithRole(Aws::String&& value) { SetRole(std::move(value)); return *this;} /** *

The IAM Amazon Resource Name (ARN) for the role that you want Elastic * Transcoder to use to create the pipeline.

*/ inline CreatePipelineRequest& WithRole(const char* value) { SetRole(value); return *this;} /** *

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.

*/ inline const Aws::String& GetAwsKmsKeyArn() const{ return m_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.

*/ inline bool AwsKmsKeyArnHasBeenSet() const { return m_awsKmsKeyArnHasBeenSet; } /** *

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.

*/ inline void SetAwsKmsKeyArn(const Aws::String& value) { m_awsKmsKeyArnHasBeenSet = true; m_awsKmsKeyArn = value; } /** *

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.

*/ inline void SetAwsKmsKeyArn(Aws::String&& value) { m_awsKmsKeyArnHasBeenSet = true; m_awsKmsKeyArn = std::move(value); } /** *

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.

*/ inline void SetAwsKmsKeyArn(const char* value) { m_awsKmsKeyArnHasBeenSet = true; m_awsKmsKeyArn.assign(value); } /** *

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.

*/ inline CreatePipelineRequest& WithAwsKmsKeyArn(const Aws::String& value) { SetAwsKmsKeyArn(value); return *this;} /** *

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.

*/ inline CreatePipelineRequest& WithAwsKmsKeyArn(Aws::String&& value) { SetAwsKmsKeyArn(std::move(value)); return *this;} /** *

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.

*/ inline CreatePipelineRequest& WithAwsKmsKeyArn(const char* value) { SetAwsKmsKeyArn(value); return *this;} /** *

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: The topic ARN for the Amazon Simple * Notification Service (Amazon SNS) topic that you want to notify when Elastic * Transcoder has started to process a job in this pipeline. This is the ARN that * Amazon SNS returned when you created the topic. For more information, see Create * a Topic in the Amazon Simple Notification Service Developer Guide.

  • *
  • Complete: The topic ARN for the Amazon SNS topic that you want * to notify when Elastic Transcoder has finished processing a job in this * pipeline. This is the ARN that Amazon SNS returned when you created the * topic.

  • Warning: The topic ARN for the Amazon SNS topic * that you want to notify when Elastic Transcoder encounters a warning condition * while processing a job in this pipeline. This is the ARN that Amazon SNS * returned when you created the topic.

  • Error: The topic * ARN for the Amazon SNS topic that you want to notify when Elastic Transcoder * encounters an error condition while processing a job in this pipeline. This is * the ARN that Amazon SNS returned when you created the topic.

*/ inline const Notifications& GetNotifications() const{ return m_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: The topic ARN for the Amazon Simple * Notification Service (Amazon SNS) topic that you want to notify when Elastic * Transcoder has started to process a job in this pipeline. This is the ARN that * Amazon SNS returned when you created the topic. For more information, see Create * a Topic in the Amazon Simple Notification Service Developer Guide.

  • *
  • Complete: The topic ARN for the Amazon SNS topic that you want * to notify when Elastic Transcoder has finished processing a job in this * pipeline. This is the ARN that Amazon SNS returned when you created the * topic.

  • Warning: The topic ARN for the Amazon SNS topic * that you want to notify when Elastic Transcoder encounters a warning condition * while processing a job in this pipeline. This is the ARN that Amazon SNS * returned when you created the topic.

  • Error: The topic * ARN for the Amazon SNS topic that you want to notify when Elastic Transcoder * encounters an error condition while processing a job in this pipeline. This is * the ARN that Amazon SNS returned when you created the topic.

*/ inline bool NotificationsHasBeenSet() const { return m_notificationsHasBeenSet; } /** *

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: The topic ARN for the Amazon Simple * Notification Service (Amazon SNS) topic that you want to notify when Elastic * Transcoder has started to process a job in this pipeline. This is the ARN that * Amazon SNS returned when you created the topic. For more information, see Create * a Topic in the Amazon Simple Notification Service Developer Guide.

  • *
  • Complete: The topic ARN for the Amazon SNS topic that you want * to notify when Elastic Transcoder has finished processing a job in this * pipeline. This is the ARN that Amazon SNS returned when you created the * topic.

  • Warning: The topic ARN for the Amazon SNS topic * that you want to notify when Elastic Transcoder encounters a warning condition * while processing a job in this pipeline. This is the ARN that Amazon SNS * returned when you created the topic.

  • Error: The topic * ARN for the Amazon SNS topic that you want to notify when Elastic Transcoder * encounters an error condition while processing a job in this pipeline. This is * the ARN that Amazon SNS returned when you created the topic.

*/ inline void SetNotifications(const Notifications& value) { m_notificationsHasBeenSet = true; m_notifications = value; } /** *

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: The topic ARN for the Amazon Simple * Notification Service (Amazon SNS) topic that you want to notify when Elastic * Transcoder has started to process a job in this pipeline. This is the ARN that * Amazon SNS returned when you created the topic. For more information, see Create * a Topic in the Amazon Simple Notification Service Developer Guide.

  • *
  • Complete: The topic ARN for the Amazon SNS topic that you want * to notify when Elastic Transcoder has finished processing a job in this * pipeline. This is the ARN that Amazon SNS returned when you created the * topic.

  • Warning: The topic ARN for the Amazon SNS topic * that you want to notify when Elastic Transcoder encounters a warning condition * while processing a job in this pipeline. This is the ARN that Amazon SNS * returned when you created the topic.

  • Error: The topic * ARN for the Amazon SNS topic that you want to notify when Elastic Transcoder * encounters an error condition while processing a job in this pipeline. This is * the ARN that Amazon SNS returned when you created the topic.

*/ inline void SetNotifications(Notifications&& value) { m_notificationsHasBeenSet = true; m_notifications = std::move(value); } /** *

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: The topic ARN for the Amazon Simple * Notification Service (Amazon SNS) topic that you want to notify when Elastic * Transcoder has started to process a job in this pipeline. This is the ARN that * Amazon SNS returned when you created the topic. For more information, see Create * a Topic in the Amazon Simple Notification Service Developer Guide.

  • *
  • Complete: The topic ARN for the Amazon SNS topic that you want * to notify when Elastic Transcoder has finished processing a job in this * pipeline. This is the ARN that Amazon SNS returned when you created the * topic.

  • Warning: The topic ARN for the Amazon SNS topic * that you want to notify when Elastic Transcoder encounters a warning condition * while processing a job in this pipeline. This is the ARN that Amazon SNS * returned when you created the topic.

  • Error: The topic * ARN for the Amazon SNS topic that you want to notify when Elastic Transcoder * encounters an error condition while processing a job in this pipeline. This is * the ARN that Amazon SNS returned when you created the topic.

*/ inline CreatePipelineRequest& WithNotifications(const Notifications& value) { SetNotifications(value); return *this;} /** *

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: The topic ARN for the Amazon Simple * Notification Service (Amazon SNS) topic that you want to notify when Elastic * Transcoder has started to process a job in this pipeline. This is the ARN that * Amazon SNS returned when you created the topic. For more information, see Create * a Topic in the Amazon Simple Notification Service Developer Guide.

  • *
  • Complete: The topic ARN for the Amazon SNS topic that you want * to notify when Elastic Transcoder has finished processing a job in this * pipeline. This is the ARN that Amazon SNS returned when you created the * topic.

  • Warning: The topic ARN for the Amazon SNS topic * that you want to notify when Elastic Transcoder encounters a warning condition * while processing a job in this pipeline. This is the ARN that Amazon SNS * returned when you created the topic.

  • Error: The topic * ARN for the Amazon SNS topic that you want to notify when Elastic Transcoder * encounters an error condition while processing a job in this pipeline. This is * the ARN that Amazon SNS returned when you created the topic.

*/ inline CreatePipelineRequest& WithNotifications(Notifications&& value) { SetNotifications(std::move(value)); return *this;} /** *

The optional ContentConfig object specifies information about * the Amazon S3 bucket in which you want Elastic Transcoder to save transcoded * files and playlists: which bucket to use, which users you want to have access to * the files, the type of access you want users to have, and the storage class that * you want to assign to the files.

If you specify values for * ContentConfig, you must also specify values for * ThumbnailConfig.

If you specify values for * ContentConfig and ThumbnailConfig, omit the * OutputBucket object.

  • Bucket: The Amazon S3 * bucket in which you want Elastic Transcoder to save transcoded files and * playlists.

  • Permissions (Optional): The Permissions * object specifies which users you want to have access to transcoded files and the * type of access you want them to have. You can grant permissions to a maximum of * 30 users and/or predefined Amazon S3 groups.

  • Grantee * Type: Specify the type of value that appears in the Grantee * object:

    • Canonical: The value in the * Grantee object is either the canonical user ID for an AWS account * or an origin access identity for an Amazon CloudFront distribution. For more * information about canonical user IDs, see Access Control List (ACL) Overview in * the Amazon Simple Storage Service Developer Guide. For more information about * using CloudFront origin access identities to require that users use CloudFront * URLs instead of Amazon S3 URLs, see Using an Origin Access Identity to Restrict * Access to Your Amazon S3 Content.

      A canonical user ID is not * the same as an AWS account number.

    • Email: * The value in the Grantee object is the registered email address of * an AWS account.

    • Group: The value in the * Grantee object is 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. To * identify the user or group, you can specify the canonical user ID for an AWS * account, an origin access identity for a CloudFront distribution, the registered * email address of an AWS account, or a predefined Amazon S3 group

  • *

    Access: The permission that you want to give to the AWS user that you * specified in Grantee. Permissions are granted on the files that * Elastic Transcoder adds to the bucket, including playlists and video files. * 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.

  • *
*/ inline const PipelineOutputConfig& GetContentConfig() const{ return m_contentConfig; } /** *

The optional ContentConfig object specifies information about * the Amazon S3 bucket in which you want Elastic Transcoder to save transcoded * files and playlists: which bucket to use, which users you want to have access to * the files, the type of access you want users to have, and the storage class that * you want to assign to the files.

If you specify values for * ContentConfig, you must also specify values for * ThumbnailConfig.

If you specify values for * ContentConfig and ThumbnailConfig, omit the * OutputBucket object.

  • Bucket: The Amazon S3 * bucket in which you want Elastic Transcoder to save transcoded files and * playlists.

  • Permissions (Optional): The Permissions * object specifies which users you want to have access to transcoded files and the * type of access you want them to have. You can grant permissions to a maximum of * 30 users and/or predefined Amazon S3 groups.

  • Grantee * Type: Specify the type of value that appears in the Grantee * object:

    • Canonical: The value in the * Grantee object is either the canonical user ID for an AWS account * or an origin access identity for an Amazon CloudFront distribution. For more * information about canonical user IDs, see Access Control List (ACL) Overview in * the Amazon Simple Storage Service Developer Guide. For more information about * using CloudFront origin access identities to require that users use CloudFront * URLs instead of Amazon S3 URLs, see Using an Origin Access Identity to Restrict * Access to Your Amazon S3 Content.

      A canonical user ID is not * the same as an AWS account number.

    • Email: * The value in the Grantee object is the registered email address of * an AWS account.

    • Group: The value in the * Grantee object is 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. To * identify the user or group, you can specify the canonical user ID for an AWS * account, an origin access identity for a CloudFront distribution, the registered * email address of an AWS account, or a predefined Amazon S3 group

  • *

    Access: The permission that you want to give to the AWS user that you * specified in Grantee. Permissions are granted on the files that * Elastic Transcoder adds to the bucket, including playlists and video files. * 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.

  • *
*/ inline bool ContentConfigHasBeenSet() const { return m_contentConfigHasBeenSet; } /** *

The optional ContentConfig object specifies information about * the Amazon S3 bucket in which you want Elastic Transcoder to save transcoded * files and playlists: which bucket to use, which users you want to have access to * the files, the type of access you want users to have, and the storage class that * you want to assign to the files.

If you specify values for * ContentConfig, you must also specify values for * ThumbnailConfig.

If you specify values for * ContentConfig and ThumbnailConfig, omit the * OutputBucket object.

  • Bucket: The Amazon S3 * bucket in which you want Elastic Transcoder to save transcoded files and * playlists.

  • Permissions (Optional): The Permissions * object specifies which users you want to have access to transcoded files and the * type of access you want them to have. You can grant permissions to a maximum of * 30 users and/or predefined Amazon S3 groups.

  • Grantee * Type: Specify the type of value that appears in the Grantee * object:

    • Canonical: The value in the * Grantee object is either the canonical user ID for an AWS account * or an origin access identity for an Amazon CloudFront distribution. For more * information about canonical user IDs, see Access Control List (ACL) Overview in * the Amazon Simple Storage Service Developer Guide. For more information about * using CloudFront origin access identities to require that users use CloudFront * URLs instead of Amazon S3 URLs, see Using an Origin Access Identity to Restrict * Access to Your Amazon S3 Content.

      A canonical user ID is not * the same as an AWS account number.

    • Email: * The value in the Grantee object is the registered email address of * an AWS account.

    • Group: The value in the * Grantee object is 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. To * identify the user or group, you can specify the canonical user ID for an AWS * account, an origin access identity for a CloudFront distribution, the registered * email address of an AWS account, or a predefined Amazon S3 group

  • *

    Access: The permission that you want to give to the AWS user that you * specified in Grantee. Permissions are granted on the files that * Elastic Transcoder adds to the bucket, including playlists and video files. * 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.

  • *
*/ inline void SetContentConfig(const PipelineOutputConfig& value) { m_contentConfigHasBeenSet = true; m_contentConfig = value; } /** *

The optional ContentConfig object specifies information about * the Amazon S3 bucket in which you want Elastic Transcoder to save transcoded * files and playlists: which bucket to use, which users you want to have access to * the files, the type of access you want users to have, and the storage class that * you want to assign to the files.

If you specify values for * ContentConfig, you must also specify values for * ThumbnailConfig.

If you specify values for * ContentConfig and ThumbnailConfig, omit the * OutputBucket object.

  • Bucket: The Amazon S3 * bucket in which you want Elastic Transcoder to save transcoded files and * playlists.

  • Permissions (Optional): The Permissions * object specifies which users you want to have access to transcoded files and the * type of access you want them to have. You can grant permissions to a maximum of * 30 users and/or predefined Amazon S3 groups.

  • Grantee * Type: Specify the type of value that appears in the Grantee * object:

    • Canonical: The value in the * Grantee object is either the canonical user ID for an AWS account * or an origin access identity for an Amazon CloudFront distribution. For more * information about canonical user IDs, see Access Control List (ACL) Overview in * the Amazon Simple Storage Service Developer Guide. For more information about * using CloudFront origin access identities to require that users use CloudFront * URLs instead of Amazon S3 URLs, see Using an Origin Access Identity to Restrict * Access to Your Amazon S3 Content.

      A canonical user ID is not * the same as an AWS account number.

    • Email: * The value in the Grantee object is the registered email address of * an AWS account.

    • Group: The value in the * Grantee object is 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. To * identify the user or group, you can specify the canonical user ID for an AWS * account, an origin access identity for a CloudFront distribution, the registered * email address of an AWS account, or a predefined Amazon S3 group

  • *

    Access: The permission that you want to give to the AWS user that you * specified in Grantee. Permissions are granted on the files that * Elastic Transcoder adds to the bucket, including playlists and video files. * 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.

  • *
*/ inline void SetContentConfig(PipelineOutputConfig&& value) { m_contentConfigHasBeenSet = true; m_contentConfig = std::move(value); } /** *

The optional ContentConfig object specifies information about * the Amazon S3 bucket in which you want Elastic Transcoder to save transcoded * files and playlists: which bucket to use, which users you want to have access to * the files, the type of access you want users to have, and the storage class that * you want to assign to the files.

If you specify values for * ContentConfig, you must also specify values for * ThumbnailConfig.

If you specify values for * ContentConfig and ThumbnailConfig, omit the * OutputBucket object.

  • Bucket: The Amazon S3 * bucket in which you want Elastic Transcoder to save transcoded files and * playlists.

  • Permissions (Optional): The Permissions * object specifies which users you want to have access to transcoded files and the * type of access you want them to have. You can grant permissions to a maximum of * 30 users and/or predefined Amazon S3 groups.

  • Grantee * Type: Specify the type of value that appears in the Grantee * object:

    • Canonical: The value in the * Grantee object is either the canonical user ID for an AWS account * or an origin access identity for an Amazon CloudFront distribution. For more * information about canonical user IDs, see Access Control List (ACL) Overview in * the Amazon Simple Storage Service Developer Guide. For more information about * using CloudFront origin access identities to require that users use CloudFront * URLs instead of Amazon S3 URLs, see Using an Origin Access Identity to Restrict * Access to Your Amazon S3 Content.

      A canonical user ID is not * the same as an AWS account number.

    • Email: * The value in the Grantee object is the registered email address of * an AWS account.

    • Group: The value in the * Grantee object is 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. To * identify the user or group, you can specify the canonical user ID for an AWS * account, an origin access identity for a CloudFront distribution, the registered * email address of an AWS account, or a predefined Amazon S3 group

  • *

    Access: The permission that you want to give to the AWS user that you * specified in Grantee. Permissions are granted on the files that * Elastic Transcoder adds to the bucket, including playlists and video files. * 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.

  • *
*/ inline CreatePipelineRequest& WithContentConfig(const PipelineOutputConfig& value) { SetContentConfig(value); return *this;} /** *

The optional ContentConfig object specifies information about * the Amazon S3 bucket in which you want Elastic Transcoder to save transcoded * files and playlists: which bucket to use, which users you want to have access to * the files, the type of access you want users to have, and the storage class that * you want to assign to the files.

If you specify values for * ContentConfig, you must also specify values for * ThumbnailConfig.

If you specify values for * ContentConfig and ThumbnailConfig, omit the * OutputBucket object.

  • Bucket: The Amazon S3 * bucket in which you want Elastic Transcoder to save transcoded files and * playlists.

  • Permissions (Optional): The Permissions * object specifies which users you want to have access to transcoded files and the * type of access you want them to have. You can grant permissions to a maximum of * 30 users and/or predefined Amazon S3 groups.

  • Grantee * Type: Specify the type of value that appears in the Grantee * object:

    • Canonical: The value in the * Grantee object is either the canonical user ID for an AWS account * or an origin access identity for an Amazon CloudFront distribution. For more * information about canonical user IDs, see Access Control List (ACL) Overview in * the Amazon Simple Storage Service Developer Guide. For more information about * using CloudFront origin access identities to require that users use CloudFront * URLs instead of Amazon S3 URLs, see Using an Origin Access Identity to Restrict * Access to Your Amazon S3 Content.

      A canonical user ID is not * the same as an AWS account number.

    • Email: * The value in the Grantee object is the registered email address of * an AWS account.

    • Group: The value in the * Grantee object is 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. To * identify the user or group, you can specify the canonical user ID for an AWS * account, an origin access identity for a CloudFront distribution, the registered * email address of an AWS account, or a predefined Amazon S3 group

  • *

    Access: The permission that you want to give to the AWS user that you * specified in Grantee. Permissions are granted on the files that * Elastic Transcoder adds to the bucket, including playlists and video files. * 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.

  • *
*/ inline CreatePipelineRequest& WithContentConfig(PipelineOutputConfig&& value) { SetContentConfig(std::move(value)); return *this;} /** *

The ThumbnailConfig object specifies several values, including * the Amazon S3 bucket in which you want Elastic Transcoder to save thumbnail * files, which users you want to have access to the files, the type of access you * want users to have, and the storage class that you want to assign to the * files.

If you specify values for ContentConfig, you must * also specify values for ThumbnailConfig even if you don't want to * create thumbnails.

If you specify values for ContentConfig * and ThumbnailConfig, omit the OutputBucket object.

*
  • Bucket: The Amazon S3 bucket in which you want Elastic * Transcoder to save thumbnail files.

  • Permissions * (Optional): The Permissions object specifies which users and/or * predefined Amazon S3 groups you want to have access to thumbnail files, and the * type of access you want them to have. You can grant permissions to a maximum of * 30 users and/or predefined Amazon S3 groups.

  • * GranteeType: Specify the type of value that appears in the Grantee * object:

    • Canonical: The value in the * Grantee object is 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 value in the Grantee * object is the registered email address of an AWS account.

    • * Group: The value in the Grantee object is 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. To identify the user or group, you can specify the * canonical user ID for an AWS account, an origin access identity for a CloudFront * distribution, the registered email address of an AWS account, or a predefined * Amazon S3 group.

  • Access: The permission that you want * to give to the AWS user that you specified in Grantee. Permissions * are granted on the thumbnail files that Elastic Transcoder adds to the bucket. * Valid values include:

    • READ: The grantee can read * the thumbnails and metadata for objects 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.

*/ inline const PipelineOutputConfig& GetThumbnailConfig() const{ return m_thumbnailConfig; } /** *

The ThumbnailConfig object specifies several values, including * the Amazon S3 bucket in which you want Elastic Transcoder to save thumbnail * files, which users you want to have access to the files, the type of access you * want users to have, and the storage class that you want to assign to the * files.

If you specify values for ContentConfig, you must * also specify values for ThumbnailConfig even if you don't want to * create thumbnails.

If you specify values for ContentConfig * and ThumbnailConfig, omit the OutputBucket object.

*
  • Bucket: The Amazon S3 bucket in which you want Elastic * Transcoder to save thumbnail files.

  • Permissions * (Optional): The Permissions object specifies which users and/or * predefined Amazon S3 groups you want to have access to thumbnail files, and the * type of access you want them to have. You can grant permissions to a maximum of * 30 users and/or predefined Amazon S3 groups.

  • * GranteeType: Specify the type of value that appears in the Grantee * object:

    • Canonical: The value in the * Grantee object is 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 value in the Grantee * object is the registered email address of an AWS account.

    • * Group: The value in the Grantee object is 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. To identify the user or group, you can specify the * canonical user ID for an AWS account, an origin access identity for a CloudFront * distribution, the registered email address of an AWS account, or a predefined * Amazon S3 group.

  • Access: The permission that you want * to give to the AWS user that you specified in Grantee. Permissions * are granted on the thumbnail files that Elastic Transcoder adds to the bucket. * Valid values include:

    • READ: The grantee can read * the thumbnails and metadata for objects 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.

*/ inline bool ThumbnailConfigHasBeenSet() const { return m_thumbnailConfigHasBeenSet; } /** *

The ThumbnailConfig object specifies several values, including * the Amazon S3 bucket in which you want Elastic Transcoder to save thumbnail * files, which users you want to have access to the files, the type of access you * want users to have, and the storage class that you want to assign to the * files.

If you specify values for ContentConfig, you must * also specify values for ThumbnailConfig even if you don't want to * create thumbnails.

If you specify values for ContentConfig * and ThumbnailConfig, omit the OutputBucket object.

*
  • Bucket: The Amazon S3 bucket in which you want Elastic * Transcoder to save thumbnail files.

  • Permissions * (Optional): The Permissions object specifies which users and/or * predefined Amazon S3 groups you want to have access to thumbnail files, and the * type of access you want them to have. You can grant permissions to a maximum of * 30 users and/or predefined Amazon S3 groups.

  • * GranteeType: Specify the type of value that appears in the Grantee * object:

    • Canonical: The value in the * Grantee object is 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 value in the Grantee * object is the registered email address of an AWS account.

    • * Group: The value in the Grantee object is 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. To identify the user or group, you can specify the * canonical user ID for an AWS account, an origin access identity for a CloudFront * distribution, the registered email address of an AWS account, or a predefined * Amazon S3 group.

  • Access: The permission that you want * to give to the AWS user that you specified in Grantee. Permissions * are granted on the thumbnail files that Elastic Transcoder adds to the bucket. * Valid values include:

    • READ: The grantee can read * the thumbnails and metadata for objects 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.

*/ inline void SetThumbnailConfig(const PipelineOutputConfig& value) { m_thumbnailConfigHasBeenSet = true; m_thumbnailConfig = value; } /** *

The ThumbnailConfig object specifies several values, including * the Amazon S3 bucket in which you want Elastic Transcoder to save thumbnail * files, which users you want to have access to the files, the type of access you * want users to have, and the storage class that you want to assign to the * files.

If you specify values for ContentConfig, you must * also specify values for ThumbnailConfig even if you don't want to * create thumbnails.

If you specify values for ContentConfig * and ThumbnailConfig, omit the OutputBucket object.

*
  • Bucket: The Amazon S3 bucket in which you want Elastic * Transcoder to save thumbnail files.

  • Permissions * (Optional): The Permissions object specifies which users and/or * predefined Amazon S3 groups you want to have access to thumbnail files, and the * type of access you want them to have. You can grant permissions to a maximum of * 30 users and/or predefined Amazon S3 groups.

  • * GranteeType: Specify the type of value that appears in the Grantee * object:

    • Canonical: The value in the * Grantee object is 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 value in the Grantee * object is the registered email address of an AWS account.

    • * Group: The value in the Grantee object is 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. To identify the user or group, you can specify the * canonical user ID for an AWS account, an origin access identity for a CloudFront * distribution, the registered email address of an AWS account, or a predefined * Amazon S3 group.

  • Access: The permission that you want * to give to the AWS user that you specified in Grantee. Permissions * are granted on the thumbnail files that Elastic Transcoder adds to the bucket. * Valid values include:

    • READ: The grantee can read * the thumbnails and metadata for objects 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.

*/ inline void SetThumbnailConfig(PipelineOutputConfig&& value) { m_thumbnailConfigHasBeenSet = true; m_thumbnailConfig = std::move(value); } /** *

The ThumbnailConfig object specifies several values, including * the Amazon S3 bucket in which you want Elastic Transcoder to save thumbnail * files, which users you want to have access to the files, the type of access you * want users to have, and the storage class that you want to assign to the * files.

If you specify values for ContentConfig, you must * also specify values for ThumbnailConfig even if you don't want to * create thumbnails.

If you specify values for ContentConfig * and ThumbnailConfig, omit the OutputBucket object.

*
  • Bucket: The Amazon S3 bucket in which you want Elastic * Transcoder to save thumbnail files.

  • Permissions * (Optional): The Permissions object specifies which users and/or * predefined Amazon S3 groups you want to have access to thumbnail files, and the * type of access you want them to have. You can grant permissions to a maximum of * 30 users and/or predefined Amazon S3 groups.

  • * GranteeType: Specify the type of value that appears in the Grantee * object:

    • Canonical: The value in the * Grantee object is 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 value in the Grantee * object is the registered email address of an AWS account.

    • * Group: The value in the Grantee object is 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. To identify the user or group, you can specify the * canonical user ID for an AWS account, an origin access identity for a CloudFront * distribution, the registered email address of an AWS account, or a predefined * Amazon S3 group.

  • Access: The permission that you want * to give to the AWS user that you specified in Grantee. Permissions * are granted on the thumbnail files that Elastic Transcoder adds to the bucket. * Valid values include:

    • READ: The grantee can read * the thumbnails and metadata for objects 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.

*/ inline CreatePipelineRequest& WithThumbnailConfig(const PipelineOutputConfig& value) { SetThumbnailConfig(value); return *this;} /** *

The ThumbnailConfig object specifies several values, including * the Amazon S3 bucket in which you want Elastic Transcoder to save thumbnail * files, which users you want to have access to the files, the type of access you * want users to have, and the storage class that you want to assign to the * files.

If you specify values for ContentConfig, you must * also specify values for ThumbnailConfig even if you don't want to * create thumbnails.

If you specify values for ContentConfig * and ThumbnailConfig, omit the OutputBucket object.

*
  • Bucket: The Amazon S3 bucket in which you want Elastic * Transcoder to save thumbnail files.

  • Permissions * (Optional): The Permissions object specifies which users and/or * predefined Amazon S3 groups you want to have access to thumbnail files, and the * type of access you want them to have. You can grant permissions to a maximum of * 30 users and/or predefined Amazon S3 groups.

  • * GranteeType: Specify the type of value that appears in the Grantee * object:

    • Canonical: The value in the * Grantee object is 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 value in the Grantee * object is the registered email address of an AWS account.

    • * Group: The value in the Grantee object is 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. To identify the user or group, you can specify the * canonical user ID for an AWS account, an origin access identity for a CloudFront * distribution, the registered email address of an AWS account, or a predefined * Amazon S3 group.

  • Access: The permission that you want * to give to the AWS user that you specified in Grantee. Permissions * are granted on the thumbnail files that Elastic Transcoder adds to the bucket. * Valid values include:

    • READ: The grantee can read * the thumbnails and metadata for objects 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.

*/ inline CreatePipelineRequest& WithThumbnailConfig(PipelineOutputConfig&& value) { SetThumbnailConfig(std::move(value)); return *this;} private: Aws::String m_name; bool m_nameHasBeenSet = false; Aws::String m_inputBucket; bool m_inputBucketHasBeenSet = false; Aws::String m_outputBucket; bool m_outputBucketHasBeenSet = false; Aws::String m_role; bool m_roleHasBeenSet = false; Aws::String m_awsKmsKeyArn; bool m_awsKmsKeyArnHasBeenSet = false; Notifications m_notifications; bool m_notificationsHasBeenSet = false; PipelineOutputConfig m_contentConfig; bool m_contentConfigHasBeenSet = false; PipelineOutputConfig m_thumbnailConfig; bool m_thumbnailConfigHasBeenSet = false; }; } // namespace Model } // namespace ElasticTranscoder } // namespace Aws