feat(hos_client_create, hos_client_destory): 多次调用destory不会导致重复释放

This commit is contained in:
彭宣正
2020-12-14 17:24:58 +08:00
parent 505d529c32
commit 10b370e486
55976 changed files with 8544395 additions and 2 deletions

View File

@@ -0,0 +1,757 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/ElasticTranscoderErrors.h>
#include <aws/core/client/AWSError.h>
#include <aws/core/client/ClientConfiguration.h>
#include <aws/core/client/AWSClient.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/json/JsonSerializer.h>
#include <aws/elastictranscoder/model/CancelJobResult.h>
#include <aws/elastictranscoder/model/CreateJobResult.h>
#include <aws/elastictranscoder/model/CreatePipelineResult.h>
#include <aws/elastictranscoder/model/CreatePresetResult.h>
#include <aws/elastictranscoder/model/DeletePipelineResult.h>
#include <aws/elastictranscoder/model/DeletePresetResult.h>
#include <aws/elastictranscoder/model/ListJobsByPipelineResult.h>
#include <aws/elastictranscoder/model/ListJobsByStatusResult.h>
#include <aws/elastictranscoder/model/ListPipelinesResult.h>
#include <aws/elastictranscoder/model/ListPresetsResult.h>
#include <aws/elastictranscoder/model/ReadJobResult.h>
#include <aws/elastictranscoder/model/ReadPipelineResult.h>
#include <aws/elastictranscoder/model/ReadPresetResult.h>
#include <aws/elastictranscoder/model/UpdatePipelineResult.h>
#include <aws/elastictranscoder/model/UpdatePipelineNotificationsResult.h>
#include <aws/elastictranscoder/model/UpdatePipelineStatusResult.h>
#include <aws/core/client/AsyncCallerContext.h>
#include <aws/core/http/HttpTypes.h>
#include <future>
#include <functional>
namespace Aws
{
namespace Http
{
class HttpClient;
class HttpClientFactory;
} // namespace Http
namespace Utils
{
template< typename R, typename E> class Outcome;
namespace Threading
{
class Executor;
} // namespace Threading
} // namespace Utils
namespace Auth
{
class AWSCredentials;
class AWSCredentialsProvider;
} // namespace Auth
namespace Client
{
class RetryStrategy;
} // namespace Client
namespace ElasticTranscoder
{
namespace Model
{
class CancelJobRequest;
class CreateJobRequest;
class CreatePipelineRequest;
class CreatePresetRequest;
class DeletePipelineRequest;
class DeletePresetRequest;
class ListJobsByPipelineRequest;
class ListJobsByStatusRequest;
class ListPipelinesRequest;
class ListPresetsRequest;
class ReadJobRequest;
class ReadPipelineRequest;
class ReadPresetRequest;
class UpdatePipelineRequest;
class UpdatePipelineNotificationsRequest;
class UpdatePipelineStatusRequest;
typedef Aws::Utils::Outcome<CancelJobResult, ElasticTranscoderError> CancelJobOutcome;
typedef Aws::Utils::Outcome<CreateJobResult, ElasticTranscoderError> CreateJobOutcome;
typedef Aws::Utils::Outcome<CreatePipelineResult, ElasticTranscoderError> CreatePipelineOutcome;
typedef Aws::Utils::Outcome<CreatePresetResult, ElasticTranscoderError> CreatePresetOutcome;
typedef Aws::Utils::Outcome<DeletePipelineResult, ElasticTranscoderError> DeletePipelineOutcome;
typedef Aws::Utils::Outcome<DeletePresetResult, ElasticTranscoderError> DeletePresetOutcome;
typedef Aws::Utils::Outcome<ListJobsByPipelineResult, ElasticTranscoderError> ListJobsByPipelineOutcome;
typedef Aws::Utils::Outcome<ListJobsByStatusResult, ElasticTranscoderError> ListJobsByStatusOutcome;
typedef Aws::Utils::Outcome<ListPipelinesResult, ElasticTranscoderError> ListPipelinesOutcome;
typedef Aws::Utils::Outcome<ListPresetsResult, ElasticTranscoderError> ListPresetsOutcome;
typedef Aws::Utils::Outcome<ReadJobResult, ElasticTranscoderError> ReadJobOutcome;
typedef Aws::Utils::Outcome<ReadPipelineResult, ElasticTranscoderError> ReadPipelineOutcome;
typedef Aws::Utils::Outcome<ReadPresetResult, ElasticTranscoderError> ReadPresetOutcome;
typedef Aws::Utils::Outcome<UpdatePipelineResult, ElasticTranscoderError> UpdatePipelineOutcome;
typedef Aws::Utils::Outcome<UpdatePipelineNotificationsResult, ElasticTranscoderError> UpdatePipelineNotificationsOutcome;
typedef Aws::Utils::Outcome<UpdatePipelineStatusResult, ElasticTranscoderError> UpdatePipelineStatusOutcome;
typedef std::future<CancelJobOutcome> CancelJobOutcomeCallable;
typedef std::future<CreateJobOutcome> CreateJobOutcomeCallable;
typedef std::future<CreatePipelineOutcome> CreatePipelineOutcomeCallable;
typedef std::future<CreatePresetOutcome> CreatePresetOutcomeCallable;
typedef std::future<DeletePipelineOutcome> DeletePipelineOutcomeCallable;
typedef std::future<DeletePresetOutcome> DeletePresetOutcomeCallable;
typedef std::future<ListJobsByPipelineOutcome> ListJobsByPipelineOutcomeCallable;
typedef std::future<ListJobsByStatusOutcome> ListJobsByStatusOutcomeCallable;
typedef std::future<ListPipelinesOutcome> ListPipelinesOutcomeCallable;
typedef std::future<ListPresetsOutcome> ListPresetsOutcomeCallable;
typedef std::future<ReadJobOutcome> ReadJobOutcomeCallable;
typedef std::future<ReadPipelineOutcome> ReadPipelineOutcomeCallable;
typedef std::future<ReadPresetOutcome> ReadPresetOutcomeCallable;
typedef std::future<UpdatePipelineOutcome> UpdatePipelineOutcomeCallable;
typedef std::future<UpdatePipelineNotificationsOutcome> UpdatePipelineNotificationsOutcomeCallable;
typedef std::future<UpdatePipelineStatusOutcome> UpdatePipelineStatusOutcomeCallable;
} // namespace Model
class ElasticTranscoderClient;
typedef std::function<void(const ElasticTranscoderClient*, const Model::CancelJobRequest&, const Model::CancelJobOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CancelJobResponseReceivedHandler;
typedef std::function<void(const ElasticTranscoderClient*, const Model::CreateJobRequest&, const Model::CreateJobOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreateJobResponseReceivedHandler;
typedef std::function<void(const ElasticTranscoderClient*, const Model::CreatePipelineRequest&, const Model::CreatePipelineOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreatePipelineResponseReceivedHandler;
typedef std::function<void(const ElasticTranscoderClient*, const Model::CreatePresetRequest&, const Model::CreatePresetOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > CreatePresetResponseReceivedHandler;
typedef std::function<void(const ElasticTranscoderClient*, const Model::DeletePipelineRequest&, const Model::DeletePipelineOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeletePipelineResponseReceivedHandler;
typedef std::function<void(const ElasticTranscoderClient*, const Model::DeletePresetRequest&, const Model::DeletePresetOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > DeletePresetResponseReceivedHandler;
typedef std::function<void(const ElasticTranscoderClient*, const Model::ListJobsByPipelineRequest&, const Model::ListJobsByPipelineOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListJobsByPipelineResponseReceivedHandler;
typedef std::function<void(const ElasticTranscoderClient*, const Model::ListJobsByStatusRequest&, const Model::ListJobsByStatusOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListJobsByStatusResponseReceivedHandler;
typedef std::function<void(const ElasticTranscoderClient*, const Model::ListPipelinesRequest&, const Model::ListPipelinesOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListPipelinesResponseReceivedHandler;
typedef std::function<void(const ElasticTranscoderClient*, const Model::ListPresetsRequest&, const Model::ListPresetsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ListPresetsResponseReceivedHandler;
typedef std::function<void(const ElasticTranscoderClient*, const Model::ReadJobRequest&, const Model::ReadJobOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ReadJobResponseReceivedHandler;
typedef std::function<void(const ElasticTranscoderClient*, const Model::ReadPipelineRequest&, const Model::ReadPipelineOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ReadPipelineResponseReceivedHandler;
typedef std::function<void(const ElasticTranscoderClient*, const Model::ReadPresetRequest&, const Model::ReadPresetOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > ReadPresetResponseReceivedHandler;
typedef std::function<void(const ElasticTranscoderClient*, const Model::UpdatePipelineRequest&, const Model::UpdatePipelineOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdatePipelineResponseReceivedHandler;
typedef std::function<void(const ElasticTranscoderClient*, const Model::UpdatePipelineNotificationsRequest&, const Model::UpdatePipelineNotificationsOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdatePipelineNotificationsResponseReceivedHandler;
typedef std::function<void(const ElasticTranscoderClient*, const Model::UpdatePipelineStatusRequest&, const Model::UpdatePipelineStatusOutcome&, const std::shared_ptr<const Aws::Client::AsyncCallerContext>&) > UpdatePipelineStatusResponseReceivedHandler;
/**
* <fullname>AWS Elastic Transcoder Service</fullname> <p>The AWS Elastic
* Transcoder Service.</p>
*/
class AWS_ELASTICTRANSCODER_API ElasticTranscoderClient : public Aws::Client::AWSJsonClient
{
public:
typedef Aws::Client::AWSJsonClient BASECLASS;
/**
* Initializes client to use DefaultCredentialProviderChain, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
ElasticTranscoderClient(const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration());
/**
* Initializes client to use SimpleAWSCredentialsProvider, with default http client factory, and optional client config. If client config
* is not specified, it will be initialized to default values.
*/
ElasticTranscoderClient(const Aws::Auth::AWSCredentials& credentials, const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration());
/**
* Initializes client to use specified credentials provider with specified client config. If http client factory is not supplied,
* the default http client factory will be used
*/
ElasticTranscoderClient(const std::shared_ptr<Aws::Auth::AWSCredentialsProvider>& credentialsProvider,
const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration());
virtual ~ElasticTranscoderClient();
/**
* <p>The CancelJob operation cancels an unfinished job.</p> <p>You can only
* cancel a job that has a status of <code>Submitted</code>. To prevent a pipeline
* from starting to process a job while you're getting the job identifier, use
* <a>UpdatePipelineStatus</a> to temporarily pause the pipeline.</p>
* <p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CancelJob">AWS
* API Reference</a></p>
*/
virtual Model::CancelJobOutcome CancelJob(const Model::CancelJobRequest& request) const;
/**
* <p>The CancelJob operation cancels an unfinished job.</p> <p>You can only
* cancel a job that has a status of <code>Submitted</code>. To prevent a pipeline
* from starting to process a job while you're getting the job identifier, use
* <a>UpdatePipelineStatus</a> to temporarily pause the pipeline.</p>
* <p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CancelJob">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CancelJobOutcomeCallable CancelJobCallable(const Model::CancelJobRequest& request) const;
/**
* <p>The CancelJob operation cancels an unfinished job.</p> <p>You can only
* cancel a job that has a status of <code>Submitted</code>. To prevent a pipeline
* from starting to process a job while you're getting the job identifier, use
* <a>UpdatePipelineStatus</a> to temporarily pause the pipeline.</p>
* <p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CancelJob">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CancelJobAsync(const Model::CancelJobRequest& request, const CancelJobResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>When you create a job, Elastic Transcoder returns JSON data that includes the
* values that you specified plus information about the job that is created.</p>
* <p>If you have specified more than one output for your jobs (for example, one
* output for the Kindle Fire and another output for the Apple iPhone 4s), you
* currently must use the Elastic Transcoder API to list the jobs (as opposed to
* the AWS Console).</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CreateJob">AWS
* API Reference</a></p>
*/
virtual Model::CreateJobOutcome CreateJob(const Model::CreateJobRequest& request) const;
/**
* <p>When you create a job, Elastic Transcoder returns JSON data that includes the
* values that you specified plus information about the job that is created.</p>
* <p>If you have specified more than one output for your jobs (for example, one
* output for the Kindle Fire and another output for the Apple iPhone 4s), you
* currently must use the Elastic Transcoder API to list the jobs (as opposed to
* the AWS Console).</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CreateJob">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CreateJobOutcomeCallable CreateJobCallable(const Model::CreateJobRequest& request) const;
/**
* <p>When you create a job, Elastic Transcoder returns JSON data that includes the
* values that you specified plus information about the job that is created.</p>
* <p>If you have specified more than one output for your jobs (for example, one
* output for the Kindle Fire and another output for the Apple iPhone 4s), you
* currently must use the Elastic Transcoder API to list the jobs (as opposed to
* the AWS Console).</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CreateJob">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CreateJobAsync(const Model::CreateJobRequest& request, const CreateJobResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>The CreatePipeline operation creates a pipeline with settings that you
* specify.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CreatePipeline">AWS
* API Reference</a></p>
*/
virtual Model::CreatePipelineOutcome CreatePipeline(const Model::CreatePipelineRequest& request) const;
/**
* <p>The CreatePipeline operation creates a pipeline with settings that you
* specify.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CreatePipeline">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CreatePipelineOutcomeCallable CreatePipelineCallable(const Model::CreatePipelineRequest& request) const;
/**
* <p>The CreatePipeline operation creates a pipeline with settings that you
* specify.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CreatePipeline">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CreatePipelineAsync(const Model::CreatePipelineRequest& request, const CreatePipelineResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>The CreatePreset operation creates a preset with settings that you
* specify.</p> <p>Elastic Transcoder checks the CreatePreset settings
* to ensure that they meet Elastic Transcoder requirements and to determine
* whether they comply with H.264 standards. If your settings are not valid for
* Elastic Transcoder, Elastic Transcoder returns an HTTP 400 response
* (<code>ValidationException</code>) and does not create the preset. If the
* settings are valid for Elastic Transcoder but aren't strictly compliant with the
* H.264 standard, Elastic Transcoder creates the preset and returns a warning
* message in the response. This helps you determine whether your settings comply
* with the H.264 standard while giving you greater flexibility with respect to the
* video that Elastic Transcoder produces.</p> <p>Elastic Transcoder
* uses the H.264 video-compression format. For more information, see the
* International Telecommunication Union publication <i>Recommendation ITU-T H.264:
* Advanced video coding for generic audiovisual services</i>.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CreatePreset">AWS
* API Reference</a></p>
*/
virtual Model::CreatePresetOutcome CreatePreset(const Model::CreatePresetRequest& request) const;
/**
* <p>The CreatePreset operation creates a preset with settings that you
* specify.</p> <p>Elastic Transcoder checks the CreatePreset settings
* to ensure that they meet Elastic Transcoder requirements and to determine
* whether they comply with H.264 standards. If your settings are not valid for
* Elastic Transcoder, Elastic Transcoder returns an HTTP 400 response
* (<code>ValidationException</code>) and does not create the preset. If the
* settings are valid for Elastic Transcoder but aren't strictly compliant with the
* H.264 standard, Elastic Transcoder creates the preset and returns a warning
* message in the response. This helps you determine whether your settings comply
* with the H.264 standard while giving you greater flexibility with respect to the
* video that Elastic Transcoder produces.</p> <p>Elastic Transcoder
* uses the H.264 video-compression format. For more information, see the
* International Telecommunication Union publication <i>Recommendation ITU-T H.264:
* Advanced video coding for generic audiovisual services</i>.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CreatePreset">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::CreatePresetOutcomeCallable CreatePresetCallable(const Model::CreatePresetRequest& request) const;
/**
* <p>The CreatePreset operation creates a preset with settings that you
* specify.</p> <p>Elastic Transcoder checks the CreatePreset settings
* to ensure that they meet Elastic Transcoder requirements and to determine
* whether they comply with H.264 standards. If your settings are not valid for
* Elastic Transcoder, Elastic Transcoder returns an HTTP 400 response
* (<code>ValidationException</code>) and does not create the preset. If the
* settings are valid for Elastic Transcoder but aren't strictly compliant with the
* H.264 standard, Elastic Transcoder creates the preset and returns a warning
* message in the response. This helps you determine whether your settings comply
* with the H.264 standard while giving you greater flexibility with respect to the
* video that Elastic Transcoder produces.</p> <p>Elastic Transcoder
* uses the H.264 video-compression format. For more information, see the
* International Telecommunication Union publication <i>Recommendation ITU-T H.264:
* Advanced video coding for generic audiovisual services</i>.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CreatePreset">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void CreatePresetAsync(const Model::CreatePresetRequest& request, const CreatePresetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>The DeletePipeline operation removes a pipeline.</p> <p> You can only delete
* a pipeline that has never been used or that is not currently in use (doesn't
* contain any active jobs). If the pipeline is currently in use,
* <code>DeletePipeline</code> returns an error. </p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/DeletePipeline">AWS
* API Reference</a></p>
*/
virtual Model::DeletePipelineOutcome DeletePipeline(const Model::DeletePipelineRequest& request) const;
/**
* <p>The DeletePipeline operation removes a pipeline.</p> <p> You can only delete
* a pipeline that has never been used or that is not currently in use (doesn't
* contain any active jobs). If the pipeline is currently in use,
* <code>DeletePipeline</code> returns an error. </p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/DeletePipeline">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::DeletePipelineOutcomeCallable DeletePipelineCallable(const Model::DeletePipelineRequest& request) const;
/**
* <p>The DeletePipeline operation removes a pipeline.</p> <p> You can only delete
* a pipeline that has never been used or that is not currently in use (doesn't
* contain any active jobs). If the pipeline is currently in use,
* <code>DeletePipeline</code> returns an error. </p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/DeletePipeline">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void DeletePipelineAsync(const Model::DeletePipelineRequest& request, const DeletePipelineResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>The DeletePreset operation removes a preset that you've added in an AWS
* region.</p> <p>You can't delete the default presets that are included
* with Elastic Transcoder.</p> <p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/DeletePreset">AWS
* API Reference</a></p>
*/
virtual Model::DeletePresetOutcome DeletePreset(const Model::DeletePresetRequest& request) const;
/**
* <p>The DeletePreset operation removes a preset that you've added in an AWS
* region.</p> <p>You can't delete the default presets that are included
* with Elastic Transcoder.</p> <p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/DeletePreset">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::DeletePresetOutcomeCallable DeletePresetCallable(const Model::DeletePresetRequest& request) const;
/**
* <p>The DeletePreset operation removes a preset that you've added in an AWS
* region.</p> <p>You can't delete the default presets that are included
* with Elastic Transcoder.</p> <p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/DeletePreset">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void DeletePresetAsync(const Model::DeletePresetRequest& request, const DeletePresetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>The ListJobsByPipeline operation gets a list of the jobs currently in a
* pipeline.</p> <p>Elastic Transcoder returns all of the jobs currently in the
* specified pipeline. The response body contains one element for each job that
* satisfies the search criteria.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListJobsByPipeline">AWS
* API Reference</a></p>
*/
virtual Model::ListJobsByPipelineOutcome ListJobsByPipeline(const Model::ListJobsByPipelineRequest& request) const;
/**
* <p>The ListJobsByPipeline operation gets a list of the jobs currently in a
* pipeline.</p> <p>Elastic Transcoder returns all of the jobs currently in the
* specified pipeline. The response body contains one element for each job that
* satisfies the search criteria.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListJobsByPipeline">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListJobsByPipelineOutcomeCallable ListJobsByPipelineCallable(const Model::ListJobsByPipelineRequest& request) const;
/**
* <p>The ListJobsByPipeline operation gets a list of the jobs currently in a
* pipeline.</p> <p>Elastic Transcoder returns all of the jobs currently in the
* specified pipeline. The response body contains one element for each job that
* satisfies the search criteria.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListJobsByPipeline">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListJobsByPipelineAsync(const Model::ListJobsByPipelineRequest& request, const ListJobsByPipelineResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>The ListJobsByStatus operation gets a list of jobs that have a specified
* status. The response body contains one element for each job that satisfies the
* search criteria.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListJobsByStatus">AWS
* API Reference</a></p>
*/
virtual Model::ListJobsByStatusOutcome ListJobsByStatus(const Model::ListJobsByStatusRequest& request) const;
/**
* <p>The ListJobsByStatus operation gets a list of jobs that have a specified
* status. The response body contains one element for each job that satisfies the
* search criteria.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListJobsByStatus">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListJobsByStatusOutcomeCallable ListJobsByStatusCallable(const Model::ListJobsByStatusRequest& request) const;
/**
* <p>The ListJobsByStatus operation gets a list of jobs that have a specified
* status. The response body contains one element for each job that satisfies the
* search criteria.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListJobsByStatus">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListJobsByStatusAsync(const Model::ListJobsByStatusRequest& request, const ListJobsByStatusResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>The ListPipelines operation gets a list of the pipelines associated with the
* current AWS account.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListPipelines">AWS
* API Reference</a></p>
*/
virtual Model::ListPipelinesOutcome ListPipelines(const Model::ListPipelinesRequest& request) const;
/**
* <p>The ListPipelines operation gets a list of the pipelines associated with the
* current AWS account.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListPipelines">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListPipelinesOutcomeCallable ListPipelinesCallable(const Model::ListPipelinesRequest& request) const;
/**
* <p>The ListPipelines operation gets a list of the pipelines associated with the
* current AWS account.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListPipelines">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListPipelinesAsync(const Model::ListPipelinesRequest& request, const ListPipelinesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>The ListPresets operation gets a list of the default presets included with
* Elastic Transcoder and the presets that you've added in an AWS
* region.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListPresets">AWS
* API Reference</a></p>
*/
virtual Model::ListPresetsOutcome ListPresets(const Model::ListPresetsRequest& request) const;
/**
* <p>The ListPresets operation gets a list of the default presets included with
* Elastic Transcoder and the presets that you've added in an AWS
* region.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListPresets">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ListPresetsOutcomeCallable ListPresetsCallable(const Model::ListPresetsRequest& request) const;
/**
* <p>The ListPresets operation gets a list of the default presets included with
* Elastic Transcoder and the presets that you've added in an AWS
* region.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListPresets">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ListPresetsAsync(const Model::ListPresetsRequest& request, const ListPresetsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>The ReadJob operation returns detailed information about a job.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ReadJob">AWS
* API Reference</a></p>
*/
virtual Model::ReadJobOutcome ReadJob(const Model::ReadJobRequest& request) const;
/**
* <p>The ReadJob operation returns detailed information about a job.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ReadJob">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ReadJobOutcomeCallable ReadJobCallable(const Model::ReadJobRequest& request) const;
/**
* <p>The ReadJob operation returns detailed information about a job.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ReadJob">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ReadJobAsync(const Model::ReadJobRequest& request, const ReadJobResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>The ReadPipeline operation gets detailed information about a
* pipeline.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ReadPipeline">AWS
* API Reference</a></p>
*/
virtual Model::ReadPipelineOutcome ReadPipeline(const Model::ReadPipelineRequest& request) const;
/**
* <p>The ReadPipeline operation gets detailed information about a
* pipeline.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ReadPipeline">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ReadPipelineOutcomeCallable ReadPipelineCallable(const Model::ReadPipelineRequest& request) const;
/**
* <p>The ReadPipeline operation gets detailed information about a
* pipeline.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ReadPipeline">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ReadPipelineAsync(const Model::ReadPipelineRequest& request, const ReadPipelineResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>The ReadPreset operation gets detailed information about a
* preset.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ReadPreset">AWS
* API Reference</a></p>
*/
virtual Model::ReadPresetOutcome ReadPreset(const Model::ReadPresetRequest& request) const;
/**
* <p>The ReadPreset operation gets detailed information about a
* preset.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ReadPreset">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::ReadPresetOutcomeCallable ReadPresetCallable(const Model::ReadPresetRequest& request) const;
/**
* <p>The ReadPreset operation gets detailed information about a
* preset.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ReadPreset">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void ReadPresetAsync(const Model::ReadPresetRequest& request, const ReadPresetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p> Use the <code>UpdatePipeline</code> operation to update settings for a
* pipeline.</p> <p>When you change pipeline settings, your changes
* take effect immediately. Jobs that you have already submitted and that Elastic
* Transcoder has not started to process are affected in addition to jobs that you
* submit after you change settings. </p> <p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/UpdatePipeline">AWS
* API Reference</a></p>
*/
virtual Model::UpdatePipelineOutcome UpdatePipeline(const Model::UpdatePipelineRequest& request) const;
/**
* <p> Use the <code>UpdatePipeline</code> operation to update settings for a
* pipeline.</p> <p>When you change pipeline settings, your changes
* take effect immediately. Jobs that you have already submitted and that Elastic
* Transcoder has not started to process are affected in addition to jobs that you
* submit after you change settings. </p> <p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/UpdatePipeline">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::UpdatePipelineOutcomeCallable UpdatePipelineCallable(const Model::UpdatePipelineRequest& request) const;
/**
* <p> Use the <code>UpdatePipeline</code> operation to update settings for a
* pipeline.</p> <p>When you change pipeline settings, your changes
* take effect immediately. Jobs that you have already submitted and that Elastic
* Transcoder has not started to process are affected in addition to jobs that you
* submit after you change settings. </p> <p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/UpdatePipeline">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void UpdatePipelineAsync(const Model::UpdatePipelineRequest& request, const UpdatePipelineResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>With the UpdatePipelineNotifications operation, you can update Amazon Simple
* Notification Service (Amazon SNS) notifications for a pipeline.</p> <p>When you
* update notifications for a pipeline, Elastic Transcoder returns the values that
* you specified in the request.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/UpdatePipelineNotifications">AWS
* API Reference</a></p>
*/
virtual Model::UpdatePipelineNotificationsOutcome UpdatePipelineNotifications(const Model::UpdatePipelineNotificationsRequest& request) const;
/**
* <p>With the UpdatePipelineNotifications operation, you can update Amazon Simple
* Notification Service (Amazon SNS) notifications for a pipeline.</p> <p>When you
* update notifications for a pipeline, Elastic Transcoder returns the values that
* you specified in the request.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/UpdatePipelineNotifications">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::UpdatePipelineNotificationsOutcomeCallable UpdatePipelineNotificationsCallable(const Model::UpdatePipelineNotificationsRequest& request) const;
/**
* <p>With the UpdatePipelineNotifications operation, you can update Amazon Simple
* Notification Service (Amazon SNS) notifications for a pipeline.</p> <p>When you
* update notifications for a pipeline, Elastic Transcoder returns the values that
* you specified in the request.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/UpdatePipelineNotifications">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void UpdatePipelineNotificationsAsync(const Model::UpdatePipelineNotificationsRequest& request, const UpdatePipelineNotificationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
/**
* <p>The UpdatePipelineStatus operation pauses or reactivates a pipeline, so that
* the pipeline stops or restarts the processing of jobs.</p> <p>Changing the
* pipeline status is useful if you want to cancel one or more jobs. You can't
* cancel jobs after Elastic Transcoder has started processing them; if you pause
* the pipeline to which you submitted the jobs, you have more time to get the job
* IDs for the jobs that you want to cancel, and to send a <a>CancelJob</a>
* request. </p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/UpdatePipelineStatus">AWS
* API Reference</a></p>
*/
virtual Model::UpdatePipelineStatusOutcome UpdatePipelineStatus(const Model::UpdatePipelineStatusRequest& request) const;
/**
* <p>The UpdatePipelineStatus operation pauses or reactivates a pipeline, so that
* the pipeline stops or restarts the processing of jobs.</p> <p>Changing the
* pipeline status is useful if you want to cancel one or more jobs. You can't
* cancel jobs after Elastic Transcoder has started processing them; if you pause
* the pipeline to which you submitted the jobs, you have more time to get the job
* IDs for the jobs that you want to cancel, and to send a <a>CancelJob</a>
* request. </p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/UpdatePipelineStatus">AWS
* API Reference</a></p>
*
* returns a future to the operation so that it can be executed in parallel to other requests.
*/
virtual Model::UpdatePipelineStatusOutcomeCallable UpdatePipelineStatusCallable(const Model::UpdatePipelineStatusRequest& request) const;
/**
* <p>The UpdatePipelineStatus operation pauses or reactivates a pipeline, so that
* the pipeline stops or restarts the processing of jobs.</p> <p>Changing the
* pipeline status is useful if you want to cancel one or more jobs. You can't
* cancel jobs after Elastic Transcoder has started processing them; if you pause
* the pipeline to which you submitted the jobs, you have more time to get the job
* IDs for the jobs that you want to cancel, and to send a <a>CancelJob</a>
* request. </p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/UpdatePipelineStatus">AWS
* API Reference</a></p>
*
* Queues the request into a thread executor and triggers associated callback when operation has finished.
*/
virtual void UpdatePipelineStatusAsync(const Model::UpdatePipelineStatusRequest& request, const UpdatePipelineStatusResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context = nullptr) const;
void OverrideEndpoint(const Aws::String& endpoint);
private:
void init(const Aws::Client::ClientConfiguration& clientConfiguration);
void CancelJobAsyncHelper(const Model::CancelJobRequest& request, const CancelJobResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void CreateJobAsyncHelper(const Model::CreateJobRequest& request, const CreateJobResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void CreatePipelineAsyncHelper(const Model::CreatePipelineRequest& request, const CreatePipelineResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void CreatePresetAsyncHelper(const Model::CreatePresetRequest& request, const CreatePresetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void DeletePipelineAsyncHelper(const Model::DeletePipelineRequest& request, const DeletePipelineResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void DeletePresetAsyncHelper(const Model::DeletePresetRequest& request, const DeletePresetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void ListJobsByPipelineAsyncHelper(const Model::ListJobsByPipelineRequest& request, const ListJobsByPipelineResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void ListJobsByStatusAsyncHelper(const Model::ListJobsByStatusRequest& request, const ListJobsByStatusResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void ListPipelinesAsyncHelper(const Model::ListPipelinesRequest& request, const ListPipelinesResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void ListPresetsAsyncHelper(const Model::ListPresetsRequest& request, const ListPresetsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void ReadJobAsyncHelper(const Model::ReadJobRequest& request, const ReadJobResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void ReadPipelineAsyncHelper(const Model::ReadPipelineRequest& request, const ReadPipelineResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void ReadPresetAsyncHelper(const Model::ReadPresetRequest& request, const ReadPresetResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void UpdatePipelineAsyncHelper(const Model::UpdatePipelineRequest& request, const UpdatePipelineResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void UpdatePipelineNotificationsAsyncHelper(const Model::UpdatePipelineNotificationsRequest& request, const UpdatePipelineNotificationsResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
void UpdatePipelineStatusAsyncHelper(const Model::UpdatePipelineStatusRequest& request, const UpdatePipelineStatusResponseReceivedHandler& handler, const std::shared_ptr<const Aws::Client::AsyncCallerContext>& context) const;
Aws::String m_uri;
Aws::String m_configScheme;
std::shared_ptr<Aws::Utils::Threading::Executor> m_executor;
};
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,21 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/Region.h>
#include <aws/core/utils/memory/stl/AWSString.h>
namespace Aws
{
namespace ElasticTranscoder
{
namespace ElasticTranscoderEndpoint
{
AWS_ELASTICTRANSCODER_API Aws::String ForRegion(const Aws::String& regionName, bool useDualStack = false);
} // namespace ElasticTranscoderEndpoint
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,23 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/client/AWSErrorMarshaller.h>
namespace Aws
{
namespace Client
{
class AWS_ELASTICTRANSCODER_API ElasticTranscoderErrorMarshaller : public Aws::Client::JsonErrorMarshaller
{
public:
Aws::Client::AWSError<Aws::Client::CoreErrors> FindErrorByName(const char* exceptionName) const override;
};
} // namespace Client
} // namespace Aws

View File

@@ -0,0 +1,75 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/core/client/AWSError.h>
#include <aws/core/client/CoreErrors.h>
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
namespace Aws
{
namespace ElasticTranscoder
{
enum class ElasticTranscoderErrors
{
//From Core//
//////////////////////////////////////////////////////////////////////////////////////////
INCOMPLETE_SIGNATURE = 0,
INTERNAL_FAILURE = 1,
INVALID_ACTION = 2,
INVALID_CLIENT_TOKEN_ID = 3,
INVALID_PARAMETER_COMBINATION = 4,
INVALID_QUERY_PARAMETER = 5,
INVALID_PARAMETER_VALUE = 6,
MISSING_ACTION = 7, // SDK should never allow
MISSING_AUTHENTICATION_TOKEN = 8, // SDK should never allow
MISSING_PARAMETER = 9, // SDK should never allow
OPT_IN_REQUIRED = 10,
REQUEST_EXPIRED = 11,
SERVICE_UNAVAILABLE = 12,
THROTTLING = 13,
VALIDATION = 14,
ACCESS_DENIED = 15,
RESOURCE_NOT_FOUND = 16,
UNRECOGNIZED_CLIENT = 17,
MALFORMED_QUERY_STRING = 18,
SLOW_DOWN = 19,
REQUEST_TIME_TOO_SKEWED = 20,
INVALID_SIGNATURE = 21,
SIGNATURE_DOES_NOT_MATCH = 22,
INVALID_ACCESS_KEY_ID = 23,
REQUEST_TIMEOUT = 24,
NETWORK_CONNECTION = 99,
UNKNOWN = 100,
///////////////////////////////////////////////////////////////////////////////////////////
INCOMPATIBLE_VERSION= static_cast<int>(Aws::Client::CoreErrors::SERVICE_EXTENSION_START_RANGE) + 1,
INTERNAL_SERVICE,
LIMIT_EXCEEDED,
RESOURCE_IN_USE
};
class AWS_ELASTICTRANSCODER_API ElasticTranscoderError : public Aws::Client::AWSError<ElasticTranscoderErrors>
{
public:
ElasticTranscoderError() {}
ElasticTranscoderError(const Aws::Client::AWSError<Aws::Client::CoreErrors>& rhs) : Aws::Client::AWSError<ElasticTranscoderErrors>(rhs) {}
ElasticTranscoderError(Aws::Client::AWSError<Aws::Client::CoreErrors>&& rhs) : Aws::Client::AWSError<ElasticTranscoderErrors>(rhs) {}
ElasticTranscoderError(const Aws::Client::AWSError<ElasticTranscoderErrors>& rhs) : Aws::Client::AWSError<ElasticTranscoderErrors>(rhs) {}
ElasticTranscoderError(Aws::Client::AWSError<ElasticTranscoderErrors>&& rhs) : Aws::Client::AWSError<ElasticTranscoderErrors>(rhs) {}
template <typename T>
T GetModeledError();
};
namespace ElasticTranscoderErrorMapper
{
AWS_ELASTICTRANSCODER_API Aws::Client::AWSError<Aws::Client::CoreErrors> GetErrorForName(const char* errorName);
}
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,42 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/AmazonSerializableWebServiceRequest.h>
#include <aws/core/utils/UnreferencedParam.h>
#include <aws/core/http/HttpRequest.h>
namespace Aws
{
namespace ElasticTranscoder
{
class AWS_ELASTICTRANSCODER_API ElasticTranscoderRequest : public Aws::AmazonSerializableWebServiceRequest
{
public:
virtual ~ElasticTranscoderRequest () {}
void AddParametersToRequest(Aws::Http::HttpRequest& httpRequest) const { AWS_UNREFERENCED_PARAM(httpRequest); }
inline Aws::Http::HeaderValueCollection GetHeaders() const override
{
auto headers = GetRequestSpecificHeaders();
if(headers.size() == 0 || (headers.size() > 0 && headers.count(Aws::Http::CONTENT_TYPE_HEADER) == 0))
{
headers.emplace(Aws::Http::HeaderValuePair(Aws::Http::CONTENT_TYPE_HEADER, Aws::AMZN_JSON_CONTENT_TYPE_1_1 ));
}
headers.emplace(Aws::Http::HeaderValuePair(Aws::Http::API_VERSION_HEADER, "2012-09-25"));
return headers;
}
protected:
virtual Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const { return Aws::Http::HeaderValueCollection(); }
};
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,29 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#ifdef _MSC_VER
//disable windows complaining about max template size.
#pragma warning (disable : 4503)
#endif // _MSC_VER
#if defined (USE_WINDOWS_DLL_SEMANTICS) || defined (_WIN32)
#ifdef _MSC_VER
#pragma warning(disable : 4251)
#endif // _MSC_VER
#ifdef USE_IMPORT_EXPORT
#ifdef AWS_ELASTICTRANSCODER_EXPORTS
#define AWS_ELASTICTRANSCODER_API __declspec(dllexport)
#else
#define AWS_ELASTICTRANSCODER_API __declspec(dllimport)
#endif /* AWS_ELASTICTRANSCODER_EXPORTS */
#else
#define AWS_ELASTICTRANSCODER_API
#endif // USE_IMPORT_EXPORT
#else // defined (USE_WINDOWS_DLL_SEMANTICS) || defined (WIN32)
#define AWS_ELASTICTRANSCODER_API
#endif // defined (USE_WINDOWS_DLL_SEMANTICS) || defined (WIN32)

View File

@@ -0,0 +1,675 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/elastictranscoder/model/Encryption.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The file to be used as album art. There can be multiple artworks associated
* with an audio file, to a maximum of 20.</p> <p>To remove artwork or leave the
* artwork empty, you can either set <code>Artwork</code> to null, or set the
* <code>Merge Policy</code> to "Replace" and use an empty <code>Artwork</code>
* array.</p> <p>To pass through existing artwork unchanged, set the <code>Merge
* Policy</code> to "Prepend", "Append", or "Fallback", and use an empty
* <code>Artwork</code> array.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/Artwork">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API Artwork
{
public:
Artwork();
Artwork(Aws::Utils::Json::JsonView jsonValue);
Artwork& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The name of the file to be used as album art. To determine which Amazon S3
* bucket contains the specified file, Elastic Transcoder checks the pipeline
* specified by <code>PipelineId</code>; the <code>InputBucket</code> object in
* that pipeline identifies the bucket.</p> <p>If the file name includes a prefix,
* for example, <code>cooking/pie.jpg</code>, include the prefix in the key. If the
* file isn't in the specified bucket, Elastic Transcoder returns an error.</p>
*/
inline const Aws::String& GetInputKey() const{ return m_inputKey; }
/**
* <p>The name of the file to be used as album art. To determine which Amazon S3
* bucket contains the specified file, Elastic Transcoder checks the pipeline
* specified by <code>PipelineId</code>; the <code>InputBucket</code> object in
* that pipeline identifies the bucket.</p> <p>If the file name includes a prefix,
* for example, <code>cooking/pie.jpg</code>, include the prefix in the key. If the
* file isn't in the specified bucket, Elastic Transcoder returns an error.</p>
*/
inline bool InputKeyHasBeenSet() const { return m_inputKeyHasBeenSet; }
/**
* <p>The name of the file to be used as album art. To determine which Amazon S3
* bucket contains the specified file, Elastic Transcoder checks the pipeline
* specified by <code>PipelineId</code>; the <code>InputBucket</code> object in
* that pipeline identifies the bucket.</p> <p>If the file name includes a prefix,
* for example, <code>cooking/pie.jpg</code>, include the prefix in the key. If the
* file isn't in the specified bucket, Elastic Transcoder returns an error.</p>
*/
inline void SetInputKey(const Aws::String& value) { m_inputKeyHasBeenSet = true; m_inputKey = value; }
/**
* <p>The name of the file to be used as album art. To determine which Amazon S3
* bucket contains the specified file, Elastic Transcoder checks the pipeline
* specified by <code>PipelineId</code>; the <code>InputBucket</code> object in
* that pipeline identifies the bucket.</p> <p>If the file name includes a prefix,
* for example, <code>cooking/pie.jpg</code>, include the prefix in the key. If the
* file isn't in the specified bucket, Elastic Transcoder returns an error.</p>
*/
inline void SetInputKey(Aws::String&& value) { m_inputKeyHasBeenSet = true; m_inputKey = std::move(value); }
/**
* <p>The name of the file to be used as album art. To determine which Amazon S3
* bucket contains the specified file, Elastic Transcoder checks the pipeline
* specified by <code>PipelineId</code>; the <code>InputBucket</code> object in
* that pipeline identifies the bucket.</p> <p>If the file name includes a prefix,
* for example, <code>cooking/pie.jpg</code>, include the prefix in the key. If the
* file isn't in the specified bucket, Elastic Transcoder returns an error.</p>
*/
inline void SetInputKey(const char* value) { m_inputKeyHasBeenSet = true; m_inputKey.assign(value); }
/**
* <p>The name of the file to be used as album art. To determine which Amazon S3
* bucket contains the specified file, Elastic Transcoder checks the pipeline
* specified by <code>PipelineId</code>; the <code>InputBucket</code> object in
* that pipeline identifies the bucket.</p> <p>If the file name includes a prefix,
* for example, <code>cooking/pie.jpg</code>, include the prefix in the key. If the
* file isn't in the specified bucket, Elastic Transcoder returns an error.</p>
*/
inline Artwork& WithInputKey(const Aws::String& value) { SetInputKey(value); return *this;}
/**
* <p>The name of the file to be used as album art. To determine which Amazon S3
* bucket contains the specified file, Elastic Transcoder checks the pipeline
* specified by <code>PipelineId</code>; the <code>InputBucket</code> object in
* that pipeline identifies the bucket.</p> <p>If the file name includes a prefix,
* for example, <code>cooking/pie.jpg</code>, include the prefix in the key. If the
* file isn't in the specified bucket, Elastic Transcoder returns an error.</p>
*/
inline Artwork& WithInputKey(Aws::String&& value) { SetInputKey(std::move(value)); return *this;}
/**
* <p>The name of the file to be used as album art. To determine which Amazon S3
* bucket contains the specified file, Elastic Transcoder checks the pipeline
* specified by <code>PipelineId</code>; the <code>InputBucket</code> object in
* that pipeline identifies the bucket.</p> <p>If the file name includes a prefix,
* for example, <code>cooking/pie.jpg</code>, include the prefix in the key. If the
* file isn't in the specified bucket, Elastic Transcoder returns an error.</p>
*/
inline Artwork& WithInputKey(const char* value) { SetInputKey(value); return *this;}
/**
* <p>The maximum width of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 4096,
* inclusive.</p>
*/
inline const Aws::String& GetMaxWidth() const{ return m_maxWidth; }
/**
* <p>The maximum width of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 4096,
* inclusive.</p>
*/
inline bool MaxWidthHasBeenSet() const { return m_maxWidthHasBeenSet; }
/**
* <p>The maximum width of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 4096,
* inclusive.</p>
*/
inline void SetMaxWidth(const Aws::String& value) { m_maxWidthHasBeenSet = true; m_maxWidth = value; }
/**
* <p>The maximum width of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 4096,
* inclusive.</p>
*/
inline void SetMaxWidth(Aws::String&& value) { m_maxWidthHasBeenSet = true; m_maxWidth = std::move(value); }
/**
* <p>The maximum width of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 4096,
* inclusive.</p>
*/
inline void SetMaxWidth(const char* value) { m_maxWidthHasBeenSet = true; m_maxWidth.assign(value); }
/**
* <p>The maximum width of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 4096,
* inclusive.</p>
*/
inline Artwork& WithMaxWidth(const Aws::String& value) { SetMaxWidth(value); return *this;}
/**
* <p>The maximum width of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 4096,
* inclusive.</p>
*/
inline Artwork& WithMaxWidth(Aws::String&& value) { SetMaxWidth(std::move(value)); return *this;}
/**
* <p>The maximum width of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 4096,
* inclusive.</p>
*/
inline Artwork& WithMaxWidth(const char* value) { SetMaxWidth(value); return *this;}
/**
* <p>The maximum height of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 3072,
* inclusive.</p>
*/
inline const Aws::String& GetMaxHeight() const{ return m_maxHeight; }
/**
* <p>The maximum height of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 3072,
* inclusive.</p>
*/
inline bool MaxHeightHasBeenSet() const { return m_maxHeightHasBeenSet; }
/**
* <p>The maximum height of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 3072,
* inclusive.</p>
*/
inline void SetMaxHeight(const Aws::String& value) { m_maxHeightHasBeenSet = true; m_maxHeight = value; }
/**
* <p>The maximum height of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 3072,
* inclusive.</p>
*/
inline void SetMaxHeight(Aws::String&& value) { m_maxHeightHasBeenSet = true; m_maxHeight = std::move(value); }
/**
* <p>The maximum height of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 3072,
* inclusive.</p>
*/
inline void SetMaxHeight(const char* value) { m_maxHeightHasBeenSet = true; m_maxHeight.assign(value); }
/**
* <p>The maximum height of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 3072,
* inclusive.</p>
*/
inline Artwork& WithMaxHeight(const Aws::String& value) { SetMaxHeight(value); return *this;}
/**
* <p>The maximum height of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 3072,
* inclusive.</p>
*/
inline Artwork& WithMaxHeight(Aws::String&& value) { SetMaxHeight(std::move(value)); return *this;}
/**
* <p>The maximum height of the output album art in pixels. If you specify
* <code>auto</code>, Elastic Transcoder uses 600 as the default value. If you
* specify a numeric value, enter an even integer between 32 and 3072,
* inclusive.</p>
*/
inline Artwork& WithMaxHeight(const char* value) { SetMaxHeight(value); return *this;}
/**
* <p>Specify one of the following values to control scaling of the output album
* art:</p> <ul> <li> <p> <code>Fit:</code> Elastic Transcoder scales the output
* art so it matches the value that you specified in either <code>MaxWidth</code>
* or <code>MaxHeight</code> without exceeding the other value.</p> </li> <li> <p>
* <code>Fill:</code> Elastic Transcoder scales the output art so it matches the
* value that you specified in either <code>MaxWidth</code> or
* <code>MaxHeight</code> and matches or exceeds the other value. Elastic
* Transcoder centers the output art and then crops it in the dimension (if any)
* that exceeds the maximum value. </p> </li> <li> <p> <code>Stretch:</code>
* Elastic Transcoder stretches the output art to match the values that you
* specified for <code>MaxWidth</code> and <code>MaxHeight</code>. If the relative
* proportions of the input art and the output art are different, the output art
* will be distorted.</p> </li> <li> <p> <code>Keep:</code> Elastic Transcoder does
* not scale the output art. If either dimension of the input art exceeds the
* values that you specified for <code>MaxWidth</code> and <code>MaxHeight</code>,
* Elastic Transcoder crops the output art.</p> </li> <li> <p>
* <code>ShrinkToFit:</code> Elastic Transcoder scales the output art down so that
* its dimensions match the values that you specified for at least one of
* <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding either value.
* If you specify this option, Elastic Transcoder does not scale the art up.</p>
* </li> <li> <p> <code>ShrinkToFill</code> Elastic Transcoder scales the output
* art down so that its dimensions match the values that you specified for at least
* one of <code>MaxWidth</code> and <code>MaxHeight</code> without dropping below
* either value. If you specify this option, Elastic Transcoder does not scale the
* art up.</p> </li> </ul>
*/
inline const Aws::String& GetSizingPolicy() const{ return m_sizingPolicy; }
/**
* <p>Specify one of the following values to control scaling of the output album
* art:</p> <ul> <li> <p> <code>Fit:</code> Elastic Transcoder scales the output
* art so it matches the value that you specified in either <code>MaxWidth</code>
* or <code>MaxHeight</code> without exceeding the other value.</p> </li> <li> <p>
* <code>Fill:</code> Elastic Transcoder scales the output art so it matches the
* value that you specified in either <code>MaxWidth</code> or
* <code>MaxHeight</code> and matches or exceeds the other value. Elastic
* Transcoder centers the output art and then crops it in the dimension (if any)
* that exceeds the maximum value. </p> </li> <li> <p> <code>Stretch:</code>
* Elastic Transcoder stretches the output art to match the values that you
* specified for <code>MaxWidth</code> and <code>MaxHeight</code>. If the relative
* proportions of the input art and the output art are different, the output art
* will be distorted.</p> </li> <li> <p> <code>Keep:</code> Elastic Transcoder does
* not scale the output art. If either dimension of the input art exceeds the
* values that you specified for <code>MaxWidth</code> and <code>MaxHeight</code>,
* Elastic Transcoder crops the output art.</p> </li> <li> <p>
* <code>ShrinkToFit:</code> Elastic Transcoder scales the output art down so that
* its dimensions match the values that you specified for at least one of
* <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding either value.
* If you specify this option, Elastic Transcoder does not scale the art up.</p>
* </li> <li> <p> <code>ShrinkToFill</code> Elastic Transcoder scales the output
* art down so that its dimensions match the values that you specified for at least
* one of <code>MaxWidth</code> and <code>MaxHeight</code> without dropping below
* either value. If you specify this option, Elastic Transcoder does not scale the
* art up.</p> </li> </ul>
*/
inline bool SizingPolicyHasBeenSet() const { return m_sizingPolicyHasBeenSet; }
/**
* <p>Specify one of the following values to control scaling of the output album
* art:</p> <ul> <li> <p> <code>Fit:</code> Elastic Transcoder scales the output
* art so it matches the value that you specified in either <code>MaxWidth</code>
* or <code>MaxHeight</code> without exceeding the other value.</p> </li> <li> <p>
* <code>Fill:</code> Elastic Transcoder scales the output art so it matches the
* value that you specified in either <code>MaxWidth</code> or
* <code>MaxHeight</code> and matches or exceeds the other value. Elastic
* Transcoder centers the output art and then crops it in the dimension (if any)
* that exceeds the maximum value. </p> </li> <li> <p> <code>Stretch:</code>
* Elastic Transcoder stretches the output art to match the values that you
* specified for <code>MaxWidth</code> and <code>MaxHeight</code>. If the relative
* proportions of the input art and the output art are different, the output art
* will be distorted.</p> </li> <li> <p> <code>Keep:</code> Elastic Transcoder does
* not scale the output art. If either dimension of the input art exceeds the
* values that you specified for <code>MaxWidth</code> and <code>MaxHeight</code>,
* Elastic Transcoder crops the output art.</p> </li> <li> <p>
* <code>ShrinkToFit:</code> Elastic Transcoder scales the output art down so that
* its dimensions match the values that you specified for at least one of
* <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding either value.
* If you specify this option, Elastic Transcoder does not scale the art up.</p>
* </li> <li> <p> <code>ShrinkToFill</code> Elastic Transcoder scales the output
* art down so that its dimensions match the values that you specified for at least
* one of <code>MaxWidth</code> and <code>MaxHeight</code> without dropping below
* either value. If you specify this option, Elastic Transcoder does not scale the
* art up.</p> </li> </ul>
*/
inline void SetSizingPolicy(const Aws::String& value) { m_sizingPolicyHasBeenSet = true; m_sizingPolicy = value; }
/**
* <p>Specify one of the following values to control scaling of the output album
* art:</p> <ul> <li> <p> <code>Fit:</code> Elastic Transcoder scales the output
* art so it matches the value that you specified in either <code>MaxWidth</code>
* or <code>MaxHeight</code> without exceeding the other value.</p> </li> <li> <p>
* <code>Fill:</code> Elastic Transcoder scales the output art so it matches the
* value that you specified in either <code>MaxWidth</code> or
* <code>MaxHeight</code> and matches or exceeds the other value. Elastic
* Transcoder centers the output art and then crops it in the dimension (if any)
* that exceeds the maximum value. </p> </li> <li> <p> <code>Stretch:</code>
* Elastic Transcoder stretches the output art to match the values that you
* specified for <code>MaxWidth</code> and <code>MaxHeight</code>. If the relative
* proportions of the input art and the output art are different, the output art
* will be distorted.</p> </li> <li> <p> <code>Keep:</code> Elastic Transcoder does
* not scale the output art. If either dimension of the input art exceeds the
* values that you specified for <code>MaxWidth</code> and <code>MaxHeight</code>,
* Elastic Transcoder crops the output art.</p> </li> <li> <p>
* <code>ShrinkToFit:</code> Elastic Transcoder scales the output art down so that
* its dimensions match the values that you specified for at least one of
* <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding either value.
* If you specify this option, Elastic Transcoder does not scale the art up.</p>
* </li> <li> <p> <code>ShrinkToFill</code> Elastic Transcoder scales the output
* art down so that its dimensions match the values that you specified for at least
* one of <code>MaxWidth</code> and <code>MaxHeight</code> without dropping below
* either value. If you specify this option, Elastic Transcoder does not scale the
* art up.</p> </li> </ul>
*/
inline void SetSizingPolicy(Aws::String&& value) { m_sizingPolicyHasBeenSet = true; m_sizingPolicy = std::move(value); }
/**
* <p>Specify one of the following values to control scaling of the output album
* art:</p> <ul> <li> <p> <code>Fit:</code> Elastic Transcoder scales the output
* art so it matches the value that you specified in either <code>MaxWidth</code>
* or <code>MaxHeight</code> without exceeding the other value.</p> </li> <li> <p>
* <code>Fill:</code> Elastic Transcoder scales the output art so it matches the
* value that you specified in either <code>MaxWidth</code> or
* <code>MaxHeight</code> and matches or exceeds the other value. Elastic
* Transcoder centers the output art and then crops it in the dimension (if any)
* that exceeds the maximum value. </p> </li> <li> <p> <code>Stretch:</code>
* Elastic Transcoder stretches the output art to match the values that you
* specified for <code>MaxWidth</code> and <code>MaxHeight</code>. If the relative
* proportions of the input art and the output art are different, the output art
* will be distorted.</p> </li> <li> <p> <code>Keep:</code> Elastic Transcoder does
* not scale the output art. If either dimension of the input art exceeds the
* values that you specified for <code>MaxWidth</code> and <code>MaxHeight</code>,
* Elastic Transcoder crops the output art.</p> </li> <li> <p>
* <code>ShrinkToFit:</code> Elastic Transcoder scales the output art down so that
* its dimensions match the values that you specified for at least one of
* <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding either value.
* If you specify this option, Elastic Transcoder does not scale the art up.</p>
* </li> <li> <p> <code>ShrinkToFill</code> Elastic Transcoder scales the output
* art down so that its dimensions match the values that you specified for at least
* one of <code>MaxWidth</code> and <code>MaxHeight</code> without dropping below
* either value. If you specify this option, Elastic Transcoder does not scale the
* art up.</p> </li> </ul>
*/
inline void SetSizingPolicy(const char* value) { m_sizingPolicyHasBeenSet = true; m_sizingPolicy.assign(value); }
/**
* <p>Specify one of the following values to control scaling of the output album
* art:</p> <ul> <li> <p> <code>Fit:</code> Elastic Transcoder scales the output
* art so it matches the value that you specified in either <code>MaxWidth</code>
* or <code>MaxHeight</code> without exceeding the other value.</p> </li> <li> <p>
* <code>Fill:</code> Elastic Transcoder scales the output art so it matches the
* value that you specified in either <code>MaxWidth</code> or
* <code>MaxHeight</code> and matches or exceeds the other value. Elastic
* Transcoder centers the output art and then crops it in the dimension (if any)
* that exceeds the maximum value. </p> </li> <li> <p> <code>Stretch:</code>
* Elastic Transcoder stretches the output art to match the values that you
* specified for <code>MaxWidth</code> and <code>MaxHeight</code>. If the relative
* proportions of the input art and the output art are different, the output art
* will be distorted.</p> </li> <li> <p> <code>Keep:</code> Elastic Transcoder does
* not scale the output art. If either dimension of the input art exceeds the
* values that you specified for <code>MaxWidth</code> and <code>MaxHeight</code>,
* Elastic Transcoder crops the output art.</p> </li> <li> <p>
* <code>ShrinkToFit:</code> Elastic Transcoder scales the output art down so that
* its dimensions match the values that you specified for at least one of
* <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding either value.
* If you specify this option, Elastic Transcoder does not scale the art up.</p>
* </li> <li> <p> <code>ShrinkToFill</code> Elastic Transcoder scales the output
* art down so that its dimensions match the values that you specified for at least
* one of <code>MaxWidth</code> and <code>MaxHeight</code> without dropping below
* either value. If you specify this option, Elastic Transcoder does not scale the
* art up.</p> </li> </ul>
*/
inline Artwork& WithSizingPolicy(const Aws::String& value) { SetSizingPolicy(value); return *this;}
/**
* <p>Specify one of the following values to control scaling of the output album
* art:</p> <ul> <li> <p> <code>Fit:</code> Elastic Transcoder scales the output
* art so it matches the value that you specified in either <code>MaxWidth</code>
* or <code>MaxHeight</code> without exceeding the other value.</p> </li> <li> <p>
* <code>Fill:</code> Elastic Transcoder scales the output art so it matches the
* value that you specified in either <code>MaxWidth</code> or
* <code>MaxHeight</code> and matches or exceeds the other value. Elastic
* Transcoder centers the output art and then crops it in the dimension (if any)
* that exceeds the maximum value. </p> </li> <li> <p> <code>Stretch:</code>
* Elastic Transcoder stretches the output art to match the values that you
* specified for <code>MaxWidth</code> and <code>MaxHeight</code>. If the relative
* proportions of the input art and the output art are different, the output art
* will be distorted.</p> </li> <li> <p> <code>Keep:</code> Elastic Transcoder does
* not scale the output art. If either dimension of the input art exceeds the
* values that you specified for <code>MaxWidth</code> and <code>MaxHeight</code>,
* Elastic Transcoder crops the output art.</p> </li> <li> <p>
* <code>ShrinkToFit:</code> Elastic Transcoder scales the output art down so that
* its dimensions match the values that you specified for at least one of
* <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding either value.
* If you specify this option, Elastic Transcoder does not scale the art up.</p>
* </li> <li> <p> <code>ShrinkToFill</code> Elastic Transcoder scales the output
* art down so that its dimensions match the values that you specified for at least
* one of <code>MaxWidth</code> and <code>MaxHeight</code> without dropping below
* either value. If you specify this option, Elastic Transcoder does not scale the
* art up.</p> </li> </ul>
*/
inline Artwork& WithSizingPolicy(Aws::String&& value) { SetSizingPolicy(std::move(value)); return *this;}
/**
* <p>Specify one of the following values to control scaling of the output album
* art:</p> <ul> <li> <p> <code>Fit:</code> Elastic Transcoder scales the output
* art so it matches the value that you specified in either <code>MaxWidth</code>
* or <code>MaxHeight</code> without exceeding the other value.</p> </li> <li> <p>
* <code>Fill:</code> Elastic Transcoder scales the output art so it matches the
* value that you specified in either <code>MaxWidth</code> or
* <code>MaxHeight</code> and matches or exceeds the other value. Elastic
* Transcoder centers the output art and then crops it in the dimension (if any)
* that exceeds the maximum value. </p> </li> <li> <p> <code>Stretch:</code>
* Elastic Transcoder stretches the output art to match the values that you
* specified for <code>MaxWidth</code> and <code>MaxHeight</code>. If the relative
* proportions of the input art and the output art are different, the output art
* will be distorted.</p> </li> <li> <p> <code>Keep:</code> Elastic Transcoder does
* not scale the output art. If either dimension of the input art exceeds the
* values that you specified for <code>MaxWidth</code> and <code>MaxHeight</code>,
* Elastic Transcoder crops the output art.</p> </li> <li> <p>
* <code>ShrinkToFit:</code> Elastic Transcoder scales the output art down so that
* its dimensions match the values that you specified for at least one of
* <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding either value.
* If you specify this option, Elastic Transcoder does not scale the art up.</p>
* </li> <li> <p> <code>ShrinkToFill</code> Elastic Transcoder scales the output
* art down so that its dimensions match the values that you specified for at least
* one of <code>MaxWidth</code> and <code>MaxHeight</code> without dropping below
* either value. If you specify this option, Elastic Transcoder does not scale the
* art up.</p> </li> </ul>
*/
inline Artwork& WithSizingPolicy(const char* value) { SetSizingPolicy(value); return *this;}
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add white bars to the top and bottom and/or left and right sides
* of the output album art to make the total size of the output art match the
* values that you specified for <code>MaxWidth</code> and
* <code>MaxHeight</code>.</p>
*/
inline const Aws::String& GetPaddingPolicy() const{ return m_paddingPolicy; }
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add white bars to the top and bottom and/or left and right sides
* of the output album art to make the total size of the output art match the
* values that you specified for <code>MaxWidth</code> and
* <code>MaxHeight</code>.</p>
*/
inline bool PaddingPolicyHasBeenSet() const { return m_paddingPolicyHasBeenSet; }
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add white bars to the top and bottom and/or left and right sides
* of the output album art to make the total size of the output art match the
* values that you specified for <code>MaxWidth</code> and
* <code>MaxHeight</code>.</p>
*/
inline void SetPaddingPolicy(const Aws::String& value) { m_paddingPolicyHasBeenSet = true; m_paddingPolicy = value; }
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add white bars to the top and bottom and/or left and right sides
* of the output album art to make the total size of the output art match the
* values that you specified for <code>MaxWidth</code> and
* <code>MaxHeight</code>.</p>
*/
inline void SetPaddingPolicy(Aws::String&& value) { m_paddingPolicyHasBeenSet = true; m_paddingPolicy = std::move(value); }
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add white bars to the top and bottom and/or left and right sides
* of the output album art to make the total size of the output art match the
* values that you specified for <code>MaxWidth</code> and
* <code>MaxHeight</code>.</p>
*/
inline void SetPaddingPolicy(const char* value) { m_paddingPolicyHasBeenSet = true; m_paddingPolicy.assign(value); }
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add white bars to the top and bottom and/or left and right sides
* of the output album art to make the total size of the output art match the
* values that you specified for <code>MaxWidth</code> and
* <code>MaxHeight</code>.</p>
*/
inline Artwork& WithPaddingPolicy(const Aws::String& value) { SetPaddingPolicy(value); return *this;}
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add white bars to the top and bottom and/or left and right sides
* of the output album art to make the total size of the output art match the
* values that you specified for <code>MaxWidth</code> and
* <code>MaxHeight</code>.</p>
*/
inline Artwork& WithPaddingPolicy(Aws::String&& value) { SetPaddingPolicy(std::move(value)); return *this;}
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add white bars to the top and bottom and/or left and right sides
* of the output album art to make the total size of the output art match the
* values that you specified for <code>MaxWidth</code> and
* <code>MaxHeight</code>.</p>
*/
inline Artwork& WithPaddingPolicy(const char* value) { SetPaddingPolicy(value); return *this;}
/**
* <p>The format of album art, if any. Valid formats are <code>.jpg</code> and
* <code>.png</code>.</p>
*/
inline const Aws::String& GetAlbumArtFormat() const{ return m_albumArtFormat; }
/**
* <p>The format of album art, if any. Valid formats are <code>.jpg</code> and
* <code>.png</code>.</p>
*/
inline bool AlbumArtFormatHasBeenSet() const { return m_albumArtFormatHasBeenSet; }
/**
* <p>The format of album art, if any. Valid formats are <code>.jpg</code> and
* <code>.png</code>.</p>
*/
inline void SetAlbumArtFormat(const Aws::String& value) { m_albumArtFormatHasBeenSet = true; m_albumArtFormat = value; }
/**
* <p>The format of album art, if any. Valid formats are <code>.jpg</code> and
* <code>.png</code>.</p>
*/
inline void SetAlbumArtFormat(Aws::String&& value) { m_albumArtFormatHasBeenSet = true; m_albumArtFormat = std::move(value); }
/**
* <p>The format of album art, if any. Valid formats are <code>.jpg</code> and
* <code>.png</code>.</p>
*/
inline void SetAlbumArtFormat(const char* value) { m_albumArtFormatHasBeenSet = true; m_albumArtFormat.assign(value); }
/**
* <p>The format of album art, if any. Valid formats are <code>.jpg</code> and
* <code>.png</code>.</p>
*/
inline Artwork& WithAlbumArtFormat(const Aws::String& value) { SetAlbumArtFormat(value); return *this;}
/**
* <p>The format of album art, if any. Valid formats are <code>.jpg</code> and
* <code>.png</code>.</p>
*/
inline Artwork& WithAlbumArtFormat(Aws::String&& value) { SetAlbumArtFormat(std::move(value)); return *this;}
/**
* <p>The format of album art, if any. Valid formats are <code>.jpg</code> and
* <code>.png</code>.</p>
*/
inline Artwork& WithAlbumArtFormat(const char* value) { SetAlbumArtFormat(value); return *this;}
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your artwork.</p>
*/
inline const Encryption& GetEncryption() const{ return m_encryption; }
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your artwork.</p>
*/
inline bool EncryptionHasBeenSet() const { return m_encryptionHasBeenSet; }
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your artwork.</p>
*/
inline void SetEncryption(const Encryption& value) { m_encryptionHasBeenSet = true; m_encryption = value; }
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your artwork.</p>
*/
inline void SetEncryption(Encryption&& value) { m_encryptionHasBeenSet = true; m_encryption = std::move(value); }
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your artwork.</p>
*/
inline Artwork& WithEncryption(const Encryption& value) { SetEncryption(value); return *this;}
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your artwork.</p>
*/
inline Artwork& WithEncryption(Encryption&& value) { SetEncryption(std::move(value)); return *this;}
private:
Aws::String m_inputKey;
bool m_inputKeyHasBeenSet;
Aws::String m_maxWidth;
bool m_maxWidthHasBeenSet;
Aws::String m_maxHeight;
bool m_maxHeightHasBeenSet;
Aws::String m_sizingPolicy;
bool m_sizingPolicyHasBeenSet;
Aws::String m_paddingPolicy;
bool m_paddingPolicyHasBeenSet;
Aws::String m_albumArtFormat;
bool m_albumArtFormatHasBeenSet;
Encryption m_encryption;
bool m_encryptionHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,404 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>Options associated with your audio codec.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/AudioCodecOptions">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API AudioCodecOptions
{
public:
AudioCodecOptions();
AudioCodecOptions(Aws::Utils::Json::JsonView jsonValue);
AudioCodecOptions& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>You can only choose an audio profile when you specify AAC for the value of
* Audio:Codec.</p> <p>Specify the AAC profile for the output file. Elastic
* Transcoder supports the following profiles:</p> <ul> <li> <p> <code>auto</code>:
* If you specify <code>auto</code>, Elastic Transcoder selects the profile based
* on the bit rate selected for the output file.</p> </li> <li> <p>
* <code>AAC-LC</code>: The most common AAC profile. Use for bit rates larger than
* 64 kbps.</p> </li> <li> <p> <code>HE-AAC</code>: Not supported on some older
* players and devices. Use for bit rates between 40 and 80 kbps.</p> </li> <li>
* <p> <code>HE-AACv2</code>: Not supported on some players and devices. Use for
* bit rates less than 48 kbps.</p> </li> </ul> <p>All outputs in a
* <code>Smooth</code> playlist must have the same value for
* <code>Profile</code>.</p> <p>If you created any presets before AAC
* profiles were added, Elastic Transcoder automatically updated your presets to
* use AAC-LC. You can change the value as required.</p>
*/
inline const Aws::String& GetProfile() const{ return m_profile; }
/**
* <p>You can only choose an audio profile when you specify AAC for the value of
* Audio:Codec.</p> <p>Specify the AAC profile for the output file. Elastic
* Transcoder supports the following profiles:</p> <ul> <li> <p> <code>auto</code>:
* If you specify <code>auto</code>, Elastic Transcoder selects the profile based
* on the bit rate selected for the output file.</p> </li> <li> <p>
* <code>AAC-LC</code>: The most common AAC profile. Use for bit rates larger than
* 64 kbps.</p> </li> <li> <p> <code>HE-AAC</code>: Not supported on some older
* players and devices. Use for bit rates between 40 and 80 kbps.</p> </li> <li>
* <p> <code>HE-AACv2</code>: Not supported on some players and devices. Use for
* bit rates less than 48 kbps.</p> </li> </ul> <p>All outputs in a
* <code>Smooth</code> playlist must have the same value for
* <code>Profile</code>.</p> <p>If you created any presets before AAC
* profiles were added, Elastic Transcoder automatically updated your presets to
* use AAC-LC. You can change the value as required.</p>
*/
inline bool ProfileHasBeenSet() const { return m_profileHasBeenSet; }
/**
* <p>You can only choose an audio profile when you specify AAC for the value of
* Audio:Codec.</p> <p>Specify the AAC profile for the output file. Elastic
* Transcoder supports the following profiles:</p> <ul> <li> <p> <code>auto</code>:
* If you specify <code>auto</code>, Elastic Transcoder selects the profile based
* on the bit rate selected for the output file.</p> </li> <li> <p>
* <code>AAC-LC</code>: The most common AAC profile. Use for bit rates larger than
* 64 kbps.</p> </li> <li> <p> <code>HE-AAC</code>: Not supported on some older
* players and devices. Use for bit rates between 40 and 80 kbps.</p> </li> <li>
* <p> <code>HE-AACv2</code>: Not supported on some players and devices. Use for
* bit rates less than 48 kbps.</p> </li> </ul> <p>All outputs in a
* <code>Smooth</code> playlist must have the same value for
* <code>Profile</code>.</p> <p>If you created any presets before AAC
* profiles were added, Elastic Transcoder automatically updated your presets to
* use AAC-LC. You can change the value as required.</p>
*/
inline void SetProfile(const Aws::String& value) { m_profileHasBeenSet = true; m_profile = value; }
/**
* <p>You can only choose an audio profile when you specify AAC for the value of
* Audio:Codec.</p> <p>Specify the AAC profile for the output file. Elastic
* Transcoder supports the following profiles:</p> <ul> <li> <p> <code>auto</code>:
* If you specify <code>auto</code>, Elastic Transcoder selects the profile based
* on the bit rate selected for the output file.</p> </li> <li> <p>
* <code>AAC-LC</code>: The most common AAC profile. Use for bit rates larger than
* 64 kbps.</p> </li> <li> <p> <code>HE-AAC</code>: Not supported on some older
* players and devices. Use for bit rates between 40 and 80 kbps.</p> </li> <li>
* <p> <code>HE-AACv2</code>: Not supported on some players and devices. Use for
* bit rates less than 48 kbps.</p> </li> </ul> <p>All outputs in a
* <code>Smooth</code> playlist must have the same value for
* <code>Profile</code>.</p> <p>If you created any presets before AAC
* profiles were added, Elastic Transcoder automatically updated your presets to
* use AAC-LC. You can change the value as required.</p>
*/
inline void SetProfile(Aws::String&& value) { m_profileHasBeenSet = true; m_profile = std::move(value); }
/**
* <p>You can only choose an audio profile when you specify AAC for the value of
* Audio:Codec.</p> <p>Specify the AAC profile for the output file. Elastic
* Transcoder supports the following profiles:</p> <ul> <li> <p> <code>auto</code>:
* If you specify <code>auto</code>, Elastic Transcoder selects the profile based
* on the bit rate selected for the output file.</p> </li> <li> <p>
* <code>AAC-LC</code>: The most common AAC profile. Use for bit rates larger than
* 64 kbps.</p> </li> <li> <p> <code>HE-AAC</code>: Not supported on some older
* players and devices. Use for bit rates between 40 and 80 kbps.</p> </li> <li>
* <p> <code>HE-AACv2</code>: Not supported on some players and devices. Use for
* bit rates less than 48 kbps.</p> </li> </ul> <p>All outputs in a
* <code>Smooth</code> playlist must have the same value for
* <code>Profile</code>.</p> <p>If you created any presets before AAC
* profiles were added, Elastic Transcoder automatically updated your presets to
* use AAC-LC. You can change the value as required.</p>
*/
inline void SetProfile(const char* value) { m_profileHasBeenSet = true; m_profile.assign(value); }
/**
* <p>You can only choose an audio profile when you specify AAC for the value of
* Audio:Codec.</p> <p>Specify the AAC profile for the output file. Elastic
* Transcoder supports the following profiles:</p> <ul> <li> <p> <code>auto</code>:
* If you specify <code>auto</code>, Elastic Transcoder selects the profile based
* on the bit rate selected for the output file.</p> </li> <li> <p>
* <code>AAC-LC</code>: The most common AAC profile. Use for bit rates larger than
* 64 kbps.</p> </li> <li> <p> <code>HE-AAC</code>: Not supported on some older
* players and devices. Use for bit rates between 40 and 80 kbps.</p> </li> <li>
* <p> <code>HE-AACv2</code>: Not supported on some players and devices. Use for
* bit rates less than 48 kbps.</p> </li> </ul> <p>All outputs in a
* <code>Smooth</code> playlist must have the same value for
* <code>Profile</code>.</p> <p>If you created any presets before AAC
* profiles were added, Elastic Transcoder automatically updated your presets to
* use AAC-LC. You can change the value as required.</p>
*/
inline AudioCodecOptions& WithProfile(const Aws::String& value) { SetProfile(value); return *this;}
/**
* <p>You can only choose an audio profile when you specify AAC for the value of
* Audio:Codec.</p> <p>Specify the AAC profile for the output file. Elastic
* Transcoder supports the following profiles:</p> <ul> <li> <p> <code>auto</code>:
* If you specify <code>auto</code>, Elastic Transcoder selects the profile based
* on the bit rate selected for the output file.</p> </li> <li> <p>
* <code>AAC-LC</code>: The most common AAC profile. Use for bit rates larger than
* 64 kbps.</p> </li> <li> <p> <code>HE-AAC</code>: Not supported on some older
* players and devices. Use for bit rates between 40 and 80 kbps.</p> </li> <li>
* <p> <code>HE-AACv2</code>: Not supported on some players and devices. Use for
* bit rates less than 48 kbps.</p> </li> </ul> <p>All outputs in a
* <code>Smooth</code> playlist must have the same value for
* <code>Profile</code>.</p> <p>If you created any presets before AAC
* profiles were added, Elastic Transcoder automatically updated your presets to
* use AAC-LC. You can change the value as required.</p>
*/
inline AudioCodecOptions& WithProfile(Aws::String&& value) { SetProfile(std::move(value)); return *this;}
/**
* <p>You can only choose an audio profile when you specify AAC for the value of
* Audio:Codec.</p> <p>Specify the AAC profile for the output file. Elastic
* Transcoder supports the following profiles:</p> <ul> <li> <p> <code>auto</code>:
* If you specify <code>auto</code>, Elastic Transcoder selects the profile based
* on the bit rate selected for the output file.</p> </li> <li> <p>
* <code>AAC-LC</code>: The most common AAC profile. Use for bit rates larger than
* 64 kbps.</p> </li> <li> <p> <code>HE-AAC</code>: Not supported on some older
* players and devices. Use for bit rates between 40 and 80 kbps.</p> </li> <li>
* <p> <code>HE-AACv2</code>: Not supported on some players and devices. Use for
* bit rates less than 48 kbps.</p> </li> </ul> <p>All outputs in a
* <code>Smooth</code> playlist must have the same value for
* <code>Profile</code>.</p> <p>If you created any presets before AAC
* profiles were added, Elastic Transcoder automatically updated your presets to
* use AAC-LC. You can change the value as required.</p>
*/
inline AudioCodecOptions& WithProfile(const char* value) { SetProfile(value); return *this;}
/**
* <p>You can only choose an audio bit depth when you specify <code>flac</code> or
* <code>pcm</code> for the value of Audio:Codec.</p> <p>The bit depth of a sample
* is how many bits of information are included in the audio samples. The higher
* the bit depth, the better the audio, but the larger the file.</p> <p>Valid
* values are <code>16</code> and <code>24</code>.</p> <p>The most common bit depth
* is <code>24</code>.</p>
*/
inline const Aws::String& GetBitDepth() const{ return m_bitDepth; }
/**
* <p>You can only choose an audio bit depth when you specify <code>flac</code> or
* <code>pcm</code> for the value of Audio:Codec.</p> <p>The bit depth of a sample
* is how many bits of information are included in the audio samples. The higher
* the bit depth, the better the audio, but the larger the file.</p> <p>Valid
* values are <code>16</code> and <code>24</code>.</p> <p>The most common bit depth
* is <code>24</code>.</p>
*/
inline bool BitDepthHasBeenSet() const { return m_bitDepthHasBeenSet; }
/**
* <p>You can only choose an audio bit depth when you specify <code>flac</code> or
* <code>pcm</code> for the value of Audio:Codec.</p> <p>The bit depth of a sample
* is how many bits of information are included in the audio samples. The higher
* the bit depth, the better the audio, but the larger the file.</p> <p>Valid
* values are <code>16</code> and <code>24</code>.</p> <p>The most common bit depth
* is <code>24</code>.</p>
*/
inline void SetBitDepth(const Aws::String& value) { m_bitDepthHasBeenSet = true; m_bitDepth = value; }
/**
* <p>You can only choose an audio bit depth when you specify <code>flac</code> or
* <code>pcm</code> for the value of Audio:Codec.</p> <p>The bit depth of a sample
* is how many bits of information are included in the audio samples. The higher
* the bit depth, the better the audio, but the larger the file.</p> <p>Valid
* values are <code>16</code> and <code>24</code>.</p> <p>The most common bit depth
* is <code>24</code>.</p>
*/
inline void SetBitDepth(Aws::String&& value) { m_bitDepthHasBeenSet = true; m_bitDepth = std::move(value); }
/**
* <p>You can only choose an audio bit depth when you specify <code>flac</code> or
* <code>pcm</code> for the value of Audio:Codec.</p> <p>The bit depth of a sample
* is how many bits of information are included in the audio samples. The higher
* the bit depth, the better the audio, but the larger the file.</p> <p>Valid
* values are <code>16</code> and <code>24</code>.</p> <p>The most common bit depth
* is <code>24</code>.</p>
*/
inline void SetBitDepth(const char* value) { m_bitDepthHasBeenSet = true; m_bitDepth.assign(value); }
/**
* <p>You can only choose an audio bit depth when you specify <code>flac</code> or
* <code>pcm</code> for the value of Audio:Codec.</p> <p>The bit depth of a sample
* is how many bits of information are included in the audio samples. The higher
* the bit depth, the better the audio, but the larger the file.</p> <p>Valid
* values are <code>16</code> and <code>24</code>.</p> <p>The most common bit depth
* is <code>24</code>.</p>
*/
inline AudioCodecOptions& WithBitDepth(const Aws::String& value) { SetBitDepth(value); return *this;}
/**
* <p>You can only choose an audio bit depth when you specify <code>flac</code> or
* <code>pcm</code> for the value of Audio:Codec.</p> <p>The bit depth of a sample
* is how many bits of information are included in the audio samples. The higher
* the bit depth, the better the audio, but the larger the file.</p> <p>Valid
* values are <code>16</code> and <code>24</code>.</p> <p>The most common bit depth
* is <code>24</code>.</p>
*/
inline AudioCodecOptions& WithBitDepth(Aws::String&& value) { SetBitDepth(std::move(value)); return *this;}
/**
* <p>You can only choose an audio bit depth when you specify <code>flac</code> or
* <code>pcm</code> for the value of Audio:Codec.</p> <p>The bit depth of a sample
* is how many bits of information are included in the audio samples. The higher
* the bit depth, the better the audio, but the larger the file.</p> <p>Valid
* values are <code>16</code> and <code>24</code>.</p> <p>The most common bit depth
* is <code>24</code>.</p>
*/
inline AudioCodecOptions& WithBitDepth(const char* value) { SetBitDepth(value); return *this;}
/**
* <p>You can only choose an audio bit order when you specify <code>pcm</code> for
* the value of Audio:Codec.</p> <p>The order the bits of a PCM sample are stored
* in.</p> <p>The supported value is <code>LittleEndian</code>.</p>
*/
inline const Aws::String& GetBitOrder() const{ return m_bitOrder; }
/**
* <p>You can only choose an audio bit order when you specify <code>pcm</code> for
* the value of Audio:Codec.</p> <p>The order the bits of a PCM sample are stored
* in.</p> <p>The supported value is <code>LittleEndian</code>.</p>
*/
inline bool BitOrderHasBeenSet() const { return m_bitOrderHasBeenSet; }
/**
* <p>You can only choose an audio bit order when you specify <code>pcm</code> for
* the value of Audio:Codec.</p> <p>The order the bits of a PCM sample are stored
* in.</p> <p>The supported value is <code>LittleEndian</code>.</p>
*/
inline void SetBitOrder(const Aws::String& value) { m_bitOrderHasBeenSet = true; m_bitOrder = value; }
/**
* <p>You can only choose an audio bit order when you specify <code>pcm</code> for
* the value of Audio:Codec.</p> <p>The order the bits of a PCM sample are stored
* in.</p> <p>The supported value is <code>LittleEndian</code>.</p>
*/
inline void SetBitOrder(Aws::String&& value) { m_bitOrderHasBeenSet = true; m_bitOrder = std::move(value); }
/**
* <p>You can only choose an audio bit order when you specify <code>pcm</code> for
* the value of Audio:Codec.</p> <p>The order the bits of a PCM sample are stored
* in.</p> <p>The supported value is <code>LittleEndian</code>.</p>
*/
inline void SetBitOrder(const char* value) { m_bitOrderHasBeenSet = true; m_bitOrder.assign(value); }
/**
* <p>You can only choose an audio bit order when you specify <code>pcm</code> for
* the value of Audio:Codec.</p> <p>The order the bits of a PCM sample are stored
* in.</p> <p>The supported value is <code>LittleEndian</code>.</p>
*/
inline AudioCodecOptions& WithBitOrder(const Aws::String& value) { SetBitOrder(value); return *this;}
/**
* <p>You can only choose an audio bit order when you specify <code>pcm</code> for
* the value of Audio:Codec.</p> <p>The order the bits of a PCM sample are stored
* in.</p> <p>The supported value is <code>LittleEndian</code>.</p>
*/
inline AudioCodecOptions& WithBitOrder(Aws::String&& value) { SetBitOrder(std::move(value)); return *this;}
/**
* <p>You can only choose an audio bit order when you specify <code>pcm</code> for
* the value of Audio:Codec.</p> <p>The order the bits of a PCM sample are stored
* in.</p> <p>The supported value is <code>LittleEndian</code>.</p>
*/
inline AudioCodecOptions& WithBitOrder(const char* value) { SetBitOrder(value); return *this;}
/**
* <p>You can only choose whether an audio sample is signed when you specify
* <code>pcm</code> for the value of Audio:Codec.</p> <p>Whether audio samples are
* represented with negative and positive numbers (signed) or only positive numbers
* (unsigned).</p> <p>The supported value is <code>Signed</code>.</p>
*/
inline const Aws::String& GetSigned() const{ return m_signed; }
/**
* <p>You can only choose whether an audio sample is signed when you specify
* <code>pcm</code> for the value of Audio:Codec.</p> <p>Whether audio samples are
* represented with negative and positive numbers (signed) or only positive numbers
* (unsigned).</p> <p>The supported value is <code>Signed</code>.</p>
*/
inline bool SignedHasBeenSet() const { return m_signedHasBeenSet; }
/**
* <p>You can only choose whether an audio sample is signed when you specify
* <code>pcm</code> for the value of Audio:Codec.</p> <p>Whether audio samples are
* represented with negative and positive numbers (signed) or only positive numbers
* (unsigned).</p> <p>The supported value is <code>Signed</code>.</p>
*/
inline void SetSigned(const Aws::String& value) { m_signedHasBeenSet = true; m_signed = value; }
/**
* <p>You can only choose whether an audio sample is signed when you specify
* <code>pcm</code> for the value of Audio:Codec.</p> <p>Whether audio samples are
* represented with negative and positive numbers (signed) or only positive numbers
* (unsigned).</p> <p>The supported value is <code>Signed</code>.</p>
*/
inline void SetSigned(Aws::String&& value) { m_signedHasBeenSet = true; m_signed = std::move(value); }
/**
* <p>You can only choose whether an audio sample is signed when you specify
* <code>pcm</code> for the value of Audio:Codec.</p> <p>Whether audio samples are
* represented with negative and positive numbers (signed) or only positive numbers
* (unsigned).</p> <p>The supported value is <code>Signed</code>.</p>
*/
inline void SetSigned(const char* value) { m_signedHasBeenSet = true; m_signed.assign(value); }
/**
* <p>You can only choose whether an audio sample is signed when you specify
* <code>pcm</code> for the value of Audio:Codec.</p> <p>Whether audio samples are
* represented with negative and positive numbers (signed) or only positive numbers
* (unsigned).</p> <p>The supported value is <code>Signed</code>.</p>
*/
inline AudioCodecOptions& WithSigned(const Aws::String& value) { SetSigned(value); return *this;}
/**
* <p>You can only choose whether an audio sample is signed when you specify
* <code>pcm</code> for the value of Audio:Codec.</p> <p>Whether audio samples are
* represented with negative and positive numbers (signed) or only positive numbers
* (unsigned).</p> <p>The supported value is <code>Signed</code>.</p>
*/
inline AudioCodecOptions& WithSigned(Aws::String&& value) { SetSigned(std::move(value)); return *this;}
/**
* <p>You can only choose whether an audio sample is signed when you specify
* <code>pcm</code> for the value of Audio:Codec.</p> <p>Whether audio samples are
* represented with negative and positive numbers (signed) or only positive numbers
* (unsigned).</p> <p>The supported value is <code>Signed</code>.</p>
*/
inline AudioCodecOptions& WithSigned(const char* value) { SetSigned(value); return *this;}
private:
Aws::String m_profile;
bool m_profileHasBeenSet;
Aws::String m_bitDepth;
bool m_bitDepthHasBeenSet;
Aws::String m_bitOrder;
bool m_bitOrderHasBeenSet;
Aws::String m_signed;
bool m_signedHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,102 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/ElasticTranscoderRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>CancelJobRequest</code> structure.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CancelJobRequest">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API CancelJobRequest : public ElasticTranscoderRequest
{
public:
CancelJobRequest();
// 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 "CancelJob"; }
Aws::String SerializePayload() const override;
/**
* <p>The identifier of the job that you want to cancel.</p> <p>To get a list of
* the jobs (including their <code>jobId</code>) that have a status of
* <code>Submitted</code>, use the <a>ListJobsByStatus</a> API action.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The identifier of the job that you want to cancel.</p> <p>To get a list of
* the jobs (including their <code>jobId</code>) that have a status of
* <code>Submitted</code>, use the <a>ListJobsByStatus</a> API action.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The identifier of the job that you want to cancel.</p> <p>To get a list of
* the jobs (including their <code>jobId</code>) that have a status of
* <code>Submitted</code>, use the <a>ListJobsByStatus</a> API action.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The identifier of the job that you want to cancel.</p> <p>To get a list of
* the jobs (including their <code>jobId</code>) that have a status of
* <code>Submitted</code>, use the <a>ListJobsByStatus</a> API action.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The identifier of the job that you want to cancel.</p> <p>To get a list of
* the jobs (including their <code>jobId</code>) that have a status of
* <code>Submitted</code>, use the <a>ListJobsByStatus</a> API action.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The identifier of the job that you want to cancel.</p> <p>To get a list of
* the jobs (including their <code>jobId</code>) that have a status of
* <code>Submitted</code>, use the <a>ListJobsByStatus</a> API action.</p>
*/
inline CancelJobRequest& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The identifier of the job that you want to cancel.</p> <p>To get a list of
* the jobs (including their <code>jobId</code>) that have a status of
* <code>Submitted</code>, use the <a>ListJobsByStatus</a> API action.</p>
*/
inline CancelJobRequest& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The identifier of the job that you want to cancel.</p> <p>To get a list of
* the jobs (including their <code>jobId</code>) that have a status of
* <code>Submitted</code>, use the <a>ListJobsByStatus</a> API action.</p>
*/
inline CancelJobRequest& WithId(const char* value) { SetId(value); return *this;}
private:
Aws::String m_id;
bool m_idHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,43 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The response body contains a JSON object. If the job is successfully
* canceled, the value of <code>Success</code> is <code>true</code>.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CancelJobResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API CancelJobResult
{
public:
CancelJobResult();
CancelJobResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CancelJobResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,358 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/elastictranscoder/model/Encryption.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The file format of the output captions. If you leave this value blank,
* Elastic Transcoder returns an error.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CaptionFormat">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API CaptionFormat
{
public:
CaptionFormat();
CaptionFormat(Aws::Utils::Json::JsonView jsonValue);
CaptionFormat& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The format you specify determines whether Elastic Transcoder generates an
* embedded or sidecar caption for this output.</p> <ul> <li> <p> <b>Valid Embedded
* Caption Formats:</b> </p> <ul> <li> <p> <b>for FLAC</b>: None</p> </li> <li> <p>
* <b>For MP3</b>: None</p> </li> <li> <p> <b>For MP4</b>: mov-text</p> </li> <li>
* <p> <b>For MPEG-TS</b>: None</p> </li> <li> <p> <b>For ogg</b>: None</p> </li>
* <li> <p> <b>For webm</b>: None</p> </li> </ul> </li> <li> <p> <b>Valid Sidecar
* Caption Formats:</b> Elastic Transcoder supports dfxp (first div element only),
* scc, srt, and webvtt. If you want ttml or smpte-tt compatible captions, specify
* dfxp as your output format.</p> <ul> <li> <p> <b>For FMP4</b>: dfxp</p> </li>
* <li> <p> <b>Non-FMP4 outputs</b>: All sidecar types</p> </li> </ul> <p>
* <code>fmp4</code> captions have an extension of <code>.ismt</code> </p> </li>
* </ul>
*/
inline const Aws::String& GetFormat() const{ return m_format; }
/**
* <p>The format you specify determines whether Elastic Transcoder generates an
* embedded or sidecar caption for this output.</p> <ul> <li> <p> <b>Valid Embedded
* Caption Formats:</b> </p> <ul> <li> <p> <b>for FLAC</b>: None</p> </li> <li> <p>
* <b>For MP3</b>: None</p> </li> <li> <p> <b>For MP4</b>: mov-text</p> </li> <li>
* <p> <b>For MPEG-TS</b>: None</p> </li> <li> <p> <b>For ogg</b>: None</p> </li>
* <li> <p> <b>For webm</b>: None</p> </li> </ul> </li> <li> <p> <b>Valid Sidecar
* Caption Formats:</b> Elastic Transcoder supports dfxp (first div element only),
* scc, srt, and webvtt. If you want ttml or smpte-tt compatible captions, specify
* dfxp as your output format.</p> <ul> <li> <p> <b>For FMP4</b>: dfxp</p> </li>
* <li> <p> <b>Non-FMP4 outputs</b>: All sidecar types</p> </li> </ul> <p>
* <code>fmp4</code> captions have an extension of <code>.ismt</code> </p> </li>
* </ul>
*/
inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; }
/**
* <p>The format you specify determines whether Elastic Transcoder generates an
* embedded or sidecar caption for this output.</p> <ul> <li> <p> <b>Valid Embedded
* Caption Formats:</b> </p> <ul> <li> <p> <b>for FLAC</b>: None</p> </li> <li> <p>
* <b>For MP3</b>: None</p> </li> <li> <p> <b>For MP4</b>: mov-text</p> </li> <li>
* <p> <b>For MPEG-TS</b>: None</p> </li> <li> <p> <b>For ogg</b>: None</p> </li>
* <li> <p> <b>For webm</b>: None</p> </li> </ul> </li> <li> <p> <b>Valid Sidecar
* Caption Formats:</b> Elastic Transcoder supports dfxp (first div element only),
* scc, srt, and webvtt. If you want ttml or smpte-tt compatible captions, specify
* dfxp as your output format.</p> <ul> <li> <p> <b>For FMP4</b>: dfxp</p> </li>
* <li> <p> <b>Non-FMP4 outputs</b>: All sidecar types</p> </li> </ul> <p>
* <code>fmp4</code> captions have an extension of <code>.ismt</code> </p> </li>
* </ul>
*/
inline void SetFormat(const Aws::String& value) { m_formatHasBeenSet = true; m_format = value; }
/**
* <p>The format you specify determines whether Elastic Transcoder generates an
* embedded or sidecar caption for this output.</p> <ul> <li> <p> <b>Valid Embedded
* Caption Formats:</b> </p> <ul> <li> <p> <b>for FLAC</b>: None</p> </li> <li> <p>
* <b>For MP3</b>: None</p> </li> <li> <p> <b>For MP4</b>: mov-text</p> </li> <li>
* <p> <b>For MPEG-TS</b>: None</p> </li> <li> <p> <b>For ogg</b>: None</p> </li>
* <li> <p> <b>For webm</b>: None</p> </li> </ul> </li> <li> <p> <b>Valid Sidecar
* Caption Formats:</b> Elastic Transcoder supports dfxp (first div element only),
* scc, srt, and webvtt. If you want ttml or smpte-tt compatible captions, specify
* dfxp as your output format.</p> <ul> <li> <p> <b>For FMP4</b>: dfxp</p> </li>
* <li> <p> <b>Non-FMP4 outputs</b>: All sidecar types</p> </li> </ul> <p>
* <code>fmp4</code> captions have an extension of <code>.ismt</code> </p> </li>
* </ul>
*/
inline void SetFormat(Aws::String&& value) { m_formatHasBeenSet = true; m_format = std::move(value); }
/**
* <p>The format you specify determines whether Elastic Transcoder generates an
* embedded or sidecar caption for this output.</p> <ul> <li> <p> <b>Valid Embedded
* Caption Formats:</b> </p> <ul> <li> <p> <b>for FLAC</b>: None</p> </li> <li> <p>
* <b>For MP3</b>: None</p> </li> <li> <p> <b>For MP4</b>: mov-text</p> </li> <li>
* <p> <b>For MPEG-TS</b>: None</p> </li> <li> <p> <b>For ogg</b>: None</p> </li>
* <li> <p> <b>For webm</b>: None</p> </li> </ul> </li> <li> <p> <b>Valid Sidecar
* Caption Formats:</b> Elastic Transcoder supports dfxp (first div element only),
* scc, srt, and webvtt. If you want ttml or smpte-tt compatible captions, specify
* dfxp as your output format.</p> <ul> <li> <p> <b>For FMP4</b>: dfxp</p> </li>
* <li> <p> <b>Non-FMP4 outputs</b>: All sidecar types</p> </li> </ul> <p>
* <code>fmp4</code> captions have an extension of <code>.ismt</code> </p> </li>
* </ul>
*/
inline void SetFormat(const char* value) { m_formatHasBeenSet = true; m_format.assign(value); }
/**
* <p>The format you specify determines whether Elastic Transcoder generates an
* embedded or sidecar caption for this output.</p> <ul> <li> <p> <b>Valid Embedded
* Caption Formats:</b> </p> <ul> <li> <p> <b>for FLAC</b>: None</p> </li> <li> <p>
* <b>For MP3</b>: None</p> </li> <li> <p> <b>For MP4</b>: mov-text</p> </li> <li>
* <p> <b>For MPEG-TS</b>: None</p> </li> <li> <p> <b>For ogg</b>: None</p> </li>
* <li> <p> <b>For webm</b>: None</p> </li> </ul> </li> <li> <p> <b>Valid Sidecar
* Caption Formats:</b> Elastic Transcoder supports dfxp (first div element only),
* scc, srt, and webvtt. If you want ttml or smpte-tt compatible captions, specify
* dfxp as your output format.</p> <ul> <li> <p> <b>For FMP4</b>: dfxp</p> </li>
* <li> <p> <b>Non-FMP4 outputs</b>: All sidecar types</p> </li> </ul> <p>
* <code>fmp4</code> captions have an extension of <code>.ismt</code> </p> </li>
* </ul>
*/
inline CaptionFormat& WithFormat(const Aws::String& value) { SetFormat(value); return *this;}
/**
* <p>The format you specify determines whether Elastic Transcoder generates an
* embedded or sidecar caption for this output.</p> <ul> <li> <p> <b>Valid Embedded
* Caption Formats:</b> </p> <ul> <li> <p> <b>for FLAC</b>: None</p> </li> <li> <p>
* <b>For MP3</b>: None</p> </li> <li> <p> <b>For MP4</b>: mov-text</p> </li> <li>
* <p> <b>For MPEG-TS</b>: None</p> </li> <li> <p> <b>For ogg</b>: None</p> </li>
* <li> <p> <b>For webm</b>: None</p> </li> </ul> </li> <li> <p> <b>Valid Sidecar
* Caption Formats:</b> Elastic Transcoder supports dfxp (first div element only),
* scc, srt, and webvtt. If you want ttml or smpte-tt compatible captions, specify
* dfxp as your output format.</p> <ul> <li> <p> <b>For FMP4</b>: dfxp</p> </li>
* <li> <p> <b>Non-FMP4 outputs</b>: All sidecar types</p> </li> </ul> <p>
* <code>fmp4</code> captions have an extension of <code>.ismt</code> </p> </li>
* </ul>
*/
inline CaptionFormat& WithFormat(Aws::String&& value) { SetFormat(std::move(value)); return *this;}
/**
* <p>The format you specify determines whether Elastic Transcoder generates an
* embedded or sidecar caption for this output.</p> <ul> <li> <p> <b>Valid Embedded
* Caption Formats:</b> </p> <ul> <li> <p> <b>for FLAC</b>: None</p> </li> <li> <p>
* <b>For MP3</b>: None</p> </li> <li> <p> <b>For MP4</b>: mov-text</p> </li> <li>
* <p> <b>For MPEG-TS</b>: None</p> </li> <li> <p> <b>For ogg</b>: None</p> </li>
* <li> <p> <b>For webm</b>: None</p> </li> </ul> </li> <li> <p> <b>Valid Sidecar
* Caption Formats:</b> Elastic Transcoder supports dfxp (first div element only),
* scc, srt, and webvtt. If you want ttml or smpte-tt compatible captions, specify
* dfxp as your output format.</p> <ul> <li> <p> <b>For FMP4</b>: dfxp</p> </li>
* <li> <p> <b>Non-FMP4 outputs</b>: All sidecar types</p> </li> </ul> <p>
* <code>fmp4</code> captions have an extension of <code>.ismt</code> </p> </li>
* </ul>
*/
inline CaptionFormat& WithFormat(const char* value) { SetFormat(value); return *this;}
/**
* <p>The prefix for caption filenames, in the form
* <i>description</i>-<code>{language}</code>, where:</p> <ul> <li> <p>
* <i>description</i> is a description of the video.</p> </li> <li> <p>
* <code>{language}</code> is a literal value that Elastic Transcoder replaces with
* the two- or three-letter code for the language of the caption in the output file
* names.</p> </li> </ul> <p>If you don't include <code>{language}</code> in the
* file name pattern, Elastic Transcoder automatically appends
* "<code>{language}</code>" to the value that you specify for the description. In
* addition, Elastic Transcoder automatically appends the count to the end of the
* segment files.</p> <p>For example, suppose you're transcoding into srt format.
* When you enter "Sydney-{language}-sunrise", and the language of the captions is
* English (en), the name of the first caption file is be
* Sydney-en-sunrise00000.srt.</p>
*/
inline const Aws::String& GetPattern() const{ return m_pattern; }
/**
* <p>The prefix for caption filenames, in the form
* <i>description</i>-<code>{language}</code>, where:</p> <ul> <li> <p>
* <i>description</i> is a description of the video.</p> </li> <li> <p>
* <code>{language}</code> is a literal value that Elastic Transcoder replaces with
* the two- or three-letter code for the language of the caption in the output file
* names.</p> </li> </ul> <p>If you don't include <code>{language}</code> in the
* file name pattern, Elastic Transcoder automatically appends
* "<code>{language}</code>" to the value that you specify for the description. In
* addition, Elastic Transcoder automatically appends the count to the end of the
* segment files.</p> <p>For example, suppose you're transcoding into srt format.
* When you enter "Sydney-{language}-sunrise", and the language of the captions is
* English (en), the name of the first caption file is be
* Sydney-en-sunrise00000.srt.</p>
*/
inline bool PatternHasBeenSet() const { return m_patternHasBeenSet; }
/**
* <p>The prefix for caption filenames, in the form
* <i>description</i>-<code>{language}</code>, where:</p> <ul> <li> <p>
* <i>description</i> is a description of the video.</p> </li> <li> <p>
* <code>{language}</code> is a literal value that Elastic Transcoder replaces with
* the two- or three-letter code for the language of the caption in the output file
* names.</p> </li> </ul> <p>If you don't include <code>{language}</code> in the
* file name pattern, Elastic Transcoder automatically appends
* "<code>{language}</code>" to the value that you specify for the description. In
* addition, Elastic Transcoder automatically appends the count to the end of the
* segment files.</p> <p>For example, suppose you're transcoding into srt format.
* When you enter "Sydney-{language}-sunrise", and the language of the captions is
* English (en), the name of the first caption file is be
* Sydney-en-sunrise00000.srt.</p>
*/
inline void SetPattern(const Aws::String& value) { m_patternHasBeenSet = true; m_pattern = value; }
/**
* <p>The prefix for caption filenames, in the form
* <i>description</i>-<code>{language}</code>, where:</p> <ul> <li> <p>
* <i>description</i> is a description of the video.</p> </li> <li> <p>
* <code>{language}</code> is a literal value that Elastic Transcoder replaces with
* the two- or three-letter code for the language of the caption in the output file
* names.</p> </li> </ul> <p>If you don't include <code>{language}</code> in the
* file name pattern, Elastic Transcoder automatically appends
* "<code>{language}</code>" to the value that you specify for the description. In
* addition, Elastic Transcoder automatically appends the count to the end of the
* segment files.</p> <p>For example, suppose you're transcoding into srt format.
* When you enter "Sydney-{language}-sunrise", and the language of the captions is
* English (en), the name of the first caption file is be
* Sydney-en-sunrise00000.srt.</p>
*/
inline void SetPattern(Aws::String&& value) { m_patternHasBeenSet = true; m_pattern = std::move(value); }
/**
* <p>The prefix for caption filenames, in the form
* <i>description</i>-<code>{language}</code>, where:</p> <ul> <li> <p>
* <i>description</i> is a description of the video.</p> </li> <li> <p>
* <code>{language}</code> is a literal value that Elastic Transcoder replaces with
* the two- or three-letter code for the language of the caption in the output file
* names.</p> </li> </ul> <p>If you don't include <code>{language}</code> in the
* file name pattern, Elastic Transcoder automatically appends
* "<code>{language}</code>" to the value that you specify for the description. In
* addition, Elastic Transcoder automatically appends the count to the end of the
* segment files.</p> <p>For example, suppose you're transcoding into srt format.
* When you enter "Sydney-{language}-sunrise", and the language of the captions is
* English (en), the name of the first caption file is be
* Sydney-en-sunrise00000.srt.</p>
*/
inline void SetPattern(const char* value) { m_patternHasBeenSet = true; m_pattern.assign(value); }
/**
* <p>The prefix for caption filenames, in the form
* <i>description</i>-<code>{language}</code>, where:</p> <ul> <li> <p>
* <i>description</i> is a description of the video.</p> </li> <li> <p>
* <code>{language}</code> is a literal value that Elastic Transcoder replaces with
* the two- or three-letter code for the language of the caption in the output file
* names.</p> </li> </ul> <p>If you don't include <code>{language}</code> in the
* file name pattern, Elastic Transcoder automatically appends
* "<code>{language}</code>" to the value that you specify for the description. In
* addition, Elastic Transcoder automatically appends the count to the end of the
* segment files.</p> <p>For example, suppose you're transcoding into srt format.
* When you enter "Sydney-{language}-sunrise", and the language of the captions is
* English (en), the name of the first caption file is be
* Sydney-en-sunrise00000.srt.</p>
*/
inline CaptionFormat& WithPattern(const Aws::String& value) { SetPattern(value); return *this;}
/**
* <p>The prefix for caption filenames, in the form
* <i>description</i>-<code>{language}</code>, where:</p> <ul> <li> <p>
* <i>description</i> is a description of the video.</p> </li> <li> <p>
* <code>{language}</code> is a literal value that Elastic Transcoder replaces with
* the two- or three-letter code for the language of the caption in the output file
* names.</p> </li> </ul> <p>If you don't include <code>{language}</code> in the
* file name pattern, Elastic Transcoder automatically appends
* "<code>{language}</code>" to the value that you specify for the description. In
* addition, Elastic Transcoder automatically appends the count to the end of the
* segment files.</p> <p>For example, suppose you're transcoding into srt format.
* When you enter "Sydney-{language}-sunrise", and the language of the captions is
* English (en), the name of the first caption file is be
* Sydney-en-sunrise00000.srt.</p>
*/
inline CaptionFormat& WithPattern(Aws::String&& value) { SetPattern(std::move(value)); return *this;}
/**
* <p>The prefix for caption filenames, in the form
* <i>description</i>-<code>{language}</code>, where:</p> <ul> <li> <p>
* <i>description</i> is a description of the video.</p> </li> <li> <p>
* <code>{language}</code> is a literal value that Elastic Transcoder replaces with
* the two- or three-letter code for the language of the caption in the output file
* names.</p> </li> </ul> <p>If you don't include <code>{language}</code> in the
* file name pattern, Elastic Transcoder automatically appends
* "<code>{language}</code>" to the value that you specify for the description. In
* addition, Elastic Transcoder automatically appends the count to the end of the
* segment files.</p> <p>For example, suppose you're transcoding into srt format.
* When you enter "Sydney-{language}-sunrise", and the language of the captions is
* English (en), the name of the first caption file is be
* Sydney-en-sunrise00000.srt.</p>
*/
inline CaptionFormat& WithPattern(const char* value) { SetPattern(value); return *this;}
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your caption formats.</p>
*/
inline const Encryption& GetEncryption() const{ return m_encryption; }
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your caption formats.</p>
*/
inline bool EncryptionHasBeenSet() const { return m_encryptionHasBeenSet; }
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your caption formats.</p>
*/
inline void SetEncryption(const Encryption& value) { m_encryptionHasBeenSet = true; m_encryption = value; }
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your caption formats.</p>
*/
inline void SetEncryption(Encryption&& value) { m_encryptionHasBeenSet = true; m_encryption = std::move(value); }
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your caption formats.</p>
*/
inline CaptionFormat& WithEncryption(const Encryption& value) { SetEncryption(value); return *this;}
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your caption formats.</p>
*/
inline CaptionFormat& WithEncryption(Encryption&& value) { SetEncryption(std::move(value)); return *this;}
private:
Aws::String m_format;
bool m_formatHasBeenSet;
Aws::String m_pattern;
bool m_patternHasBeenSet;
Encryption m_encryption;
bool m_encryptionHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,356 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/elastictranscoder/model/Encryption.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>A source file for the input sidecar captions used during the transcoding
* process.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CaptionSource">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API CaptionSource
{
public:
CaptionSource();
CaptionSource(Aws::Utils::Json::JsonView jsonValue);
CaptionSource& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The name of the sidecar caption file that you want Elastic Transcoder to
* include in the output file.</p>
*/
inline const Aws::String& GetKey() const{ return m_key; }
/**
* <p>The name of the sidecar caption file that you want Elastic Transcoder to
* include in the output file.</p>
*/
inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
/**
* <p>The name of the sidecar caption file that you want Elastic Transcoder to
* include in the output file.</p>
*/
inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; }
/**
* <p>The name of the sidecar caption file that you want Elastic Transcoder to
* include in the output file.</p>
*/
inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); }
/**
* <p>The name of the sidecar caption file that you want Elastic Transcoder to
* include in the output file.</p>
*/
inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); }
/**
* <p>The name of the sidecar caption file that you want Elastic Transcoder to
* include in the output file.</p>
*/
inline CaptionSource& WithKey(const Aws::String& value) { SetKey(value); return *this;}
/**
* <p>The name of the sidecar caption file that you want Elastic Transcoder to
* include in the output file.</p>
*/
inline CaptionSource& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;}
/**
* <p>The name of the sidecar caption file that you want Elastic Transcoder to
* include in the output file.</p>
*/
inline CaptionSource& WithKey(const char* value) { SetKey(value); return *this;}
/**
* <p>A string that specifies the language of the caption. If you specified
* multiple inputs with captions, the caption language must match in order to be
* included in the output. Specify this as one of:</p> <ul> <li> <p>2-character ISO
* 639-1 code</p> </li> <li> <p>3-character ISO 639-2 code</p> </li> </ul> <p>For
* more information on ISO language codes and language names, see the List of ISO
* 639-1 codes.</p>
*/
inline const Aws::String& GetLanguage() const{ return m_language; }
/**
* <p>A string that specifies the language of the caption. If you specified
* multiple inputs with captions, the caption language must match in order to be
* included in the output. Specify this as one of:</p> <ul> <li> <p>2-character ISO
* 639-1 code</p> </li> <li> <p>3-character ISO 639-2 code</p> </li> </ul> <p>For
* more information on ISO language codes and language names, see the List of ISO
* 639-1 codes.</p>
*/
inline bool LanguageHasBeenSet() const { return m_languageHasBeenSet; }
/**
* <p>A string that specifies the language of the caption. If you specified
* multiple inputs with captions, the caption language must match in order to be
* included in the output. Specify this as one of:</p> <ul> <li> <p>2-character ISO
* 639-1 code</p> </li> <li> <p>3-character ISO 639-2 code</p> </li> </ul> <p>For
* more information on ISO language codes and language names, see the List of ISO
* 639-1 codes.</p>
*/
inline void SetLanguage(const Aws::String& value) { m_languageHasBeenSet = true; m_language = value; }
/**
* <p>A string that specifies the language of the caption. If you specified
* multiple inputs with captions, the caption language must match in order to be
* included in the output. Specify this as one of:</p> <ul> <li> <p>2-character ISO
* 639-1 code</p> </li> <li> <p>3-character ISO 639-2 code</p> </li> </ul> <p>For
* more information on ISO language codes and language names, see the List of ISO
* 639-1 codes.</p>
*/
inline void SetLanguage(Aws::String&& value) { m_languageHasBeenSet = true; m_language = std::move(value); }
/**
* <p>A string that specifies the language of the caption. If you specified
* multiple inputs with captions, the caption language must match in order to be
* included in the output. Specify this as one of:</p> <ul> <li> <p>2-character ISO
* 639-1 code</p> </li> <li> <p>3-character ISO 639-2 code</p> </li> </ul> <p>For
* more information on ISO language codes and language names, see the List of ISO
* 639-1 codes.</p>
*/
inline void SetLanguage(const char* value) { m_languageHasBeenSet = true; m_language.assign(value); }
/**
* <p>A string that specifies the language of the caption. If you specified
* multiple inputs with captions, the caption language must match in order to be
* included in the output. Specify this as one of:</p> <ul> <li> <p>2-character ISO
* 639-1 code</p> </li> <li> <p>3-character ISO 639-2 code</p> </li> </ul> <p>For
* more information on ISO language codes and language names, see the List of ISO
* 639-1 codes.</p>
*/
inline CaptionSource& WithLanguage(const Aws::String& value) { SetLanguage(value); return *this;}
/**
* <p>A string that specifies the language of the caption. If you specified
* multiple inputs with captions, the caption language must match in order to be
* included in the output. Specify this as one of:</p> <ul> <li> <p>2-character ISO
* 639-1 code</p> </li> <li> <p>3-character ISO 639-2 code</p> </li> </ul> <p>For
* more information on ISO language codes and language names, see the List of ISO
* 639-1 codes.</p>
*/
inline CaptionSource& WithLanguage(Aws::String&& value) { SetLanguage(std::move(value)); return *this;}
/**
* <p>A string that specifies the language of the caption. If you specified
* multiple inputs with captions, the caption language must match in order to be
* included in the output. Specify this as one of:</p> <ul> <li> <p>2-character ISO
* 639-1 code</p> </li> <li> <p>3-character ISO 639-2 code</p> </li> </ul> <p>For
* more information on ISO language codes and language names, see the List of ISO
* 639-1 codes.</p>
*/
inline CaptionSource& WithLanguage(const char* value) { SetLanguage(value); return *this;}
/**
* <p>For clip generation or captions that do not start at the same time as the
* associated video file, the <code>TimeOffset</code> tells Elastic Transcoder how
* much of the video to encode before including captions.</p> <p>Specify the
* TimeOffset in the form [+-]SS.sss or [+-]HH:mm:SS.ss.</p>
*/
inline const Aws::String& GetTimeOffset() const{ return m_timeOffset; }
/**
* <p>For clip generation or captions that do not start at the same time as the
* associated video file, the <code>TimeOffset</code> tells Elastic Transcoder how
* much of the video to encode before including captions.</p> <p>Specify the
* TimeOffset in the form [+-]SS.sss or [+-]HH:mm:SS.ss.</p>
*/
inline bool TimeOffsetHasBeenSet() const { return m_timeOffsetHasBeenSet; }
/**
* <p>For clip generation or captions that do not start at the same time as the
* associated video file, the <code>TimeOffset</code> tells Elastic Transcoder how
* much of the video to encode before including captions.</p> <p>Specify the
* TimeOffset in the form [+-]SS.sss or [+-]HH:mm:SS.ss.</p>
*/
inline void SetTimeOffset(const Aws::String& value) { m_timeOffsetHasBeenSet = true; m_timeOffset = value; }
/**
* <p>For clip generation or captions that do not start at the same time as the
* associated video file, the <code>TimeOffset</code> tells Elastic Transcoder how
* much of the video to encode before including captions.</p> <p>Specify the
* TimeOffset in the form [+-]SS.sss or [+-]HH:mm:SS.ss.</p>
*/
inline void SetTimeOffset(Aws::String&& value) { m_timeOffsetHasBeenSet = true; m_timeOffset = std::move(value); }
/**
* <p>For clip generation or captions that do not start at the same time as the
* associated video file, the <code>TimeOffset</code> tells Elastic Transcoder how
* much of the video to encode before including captions.</p> <p>Specify the
* TimeOffset in the form [+-]SS.sss or [+-]HH:mm:SS.ss.</p>
*/
inline void SetTimeOffset(const char* value) { m_timeOffsetHasBeenSet = true; m_timeOffset.assign(value); }
/**
* <p>For clip generation or captions that do not start at the same time as the
* associated video file, the <code>TimeOffset</code> tells Elastic Transcoder how
* much of the video to encode before including captions.</p> <p>Specify the
* TimeOffset in the form [+-]SS.sss or [+-]HH:mm:SS.ss.</p>
*/
inline CaptionSource& WithTimeOffset(const Aws::String& value) { SetTimeOffset(value); return *this;}
/**
* <p>For clip generation or captions that do not start at the same time as the
* associated video file, the <code>TimeOffset</code> tells Elastic Transcoder how
* much of the video to encode before including captions.</p> <p>Specify the
* TimeOffset in the form [+-]SS.sss or [+-]HH:mm:SS.ss.</p>
*/
inline CaptionSource& WithTimeOffset(Aws::String&& value) { SetTimeOffset(std::move(value)); return *this;}
/**
* <p>For clip generation or captions that do not start at the same time as the
* associated video file, the <code>TimeOffset</code> tells Elastic Transcoder how
* much of the video to encode before including captions.</p> <p>Specify the
* TimeOffset in the form [+-]SS.sss or [+-]HH:mm:SS.ss.</p>
*/
inline CaptionSource& WithTimeOffset(const char* value) { SetTimeOffset(value); return *this;}
/**
* <p>The label of the caption shown in the player when choosing a language. We
* recommend that you put the caption language name here, in the language of the
* captions.</p>
*/
inline const Aws::String& GetLabel() const{ return m_label; }
/**
* <p>The label of the caption shown in the player when choosing a language. We
* recommend that you put the caption language name here, in the language of the
* captions.</p>
*/
inline bool LabelHasBeenSet() const { return m_labelHasBeenSet; }
/**
* <p>The label of the caption shown in the player when choosing a language. We
* recommend that you put the caption language name here, in the language of the
* captions.</p>
*/
inline void SetLabel(const Aws::String& value) { m_labelHasBeenSet = true; m_label = value; }
/**
* <p>The label of the caption shown in the player when choosing a language. We
* recommend that you put the caption language name here, in the language of the
* captions.</p>
*/
inline void SetLabel(Aws::String&& value) { m_labelHasBeenSet = true; m_label = std::move(value); }
/**
* <p>The label of the caption shown in the player when choosing a language. We
* recommend that you put the caption language name here, in the language of the
* captions.</p>
*/
inline void SetLabel(const char* value) { m_labelHasBeenSet = true; m_label.assign(value); }
/**
* <p>The label of the caption shown in the player when choosing a language. We
* recommend that you put the caption language name here, in the language of the
* captions.</p>
*/
inline CaptionSource& WithLabel(const Aws::String& value) { SetLabel(value); return *this;}
/**
* <p>The label of the caption shown in the player when choosing a language. We
* recommend that you put the caption language name here, in the language of the
* captions.</p>
*/
inline CaptionSource& WithLabel(Aws::String&& value) { SetLabel(std::move(value)); return *this;}
/**
* <p>The label of the caption shown in the player when choosing a language. We
* recommend that you put the caption language name here, in the language of the
* captions.</p>
*/
inline CaptionSource& WithLabel(const char* value) { SetLabel(value); return *this;}
/**
* <p>The encryption settings, if any, that Elastic Transcoder needs to decyrpt
* your caption sources, or that you want Elastic Transcoder to apply to your
* caption sources.</p>
*/
inline const Encryption& GetEncryption() const{ return m_encryption; }
/**
* <p>The encryption settings, if any, that Elastic Transcoder needs to decyrpt
* your caption sources, or that you want Elastic Transcoder to apply to your
* caption sources.</p>
*/
inline bool EncryptionHasBeenSet() const { return m_encryptionHasBeenSet; }
/**
* <p>The encryption settings, if any, that Elastic Transcoder needs to decyrpt
* your caption sources, or that you want Elastic Transcoder to apply to your
* caption sources.</p>
*/
inline void SetEncryption(const Encryption& value) { m_encryptionHasBeenSet = true; m_encryption = value; }
/**
* <p>The encryption settings, if any, that Elastic Transcoder needs to decyrpt
* your caption sources, or that you want Elastic Transcoder to apply to your
* caption sources.</p>
*/
inline void SetEncryption(Encryption&& value) { m_encryptionHasBeenSet = true; m_encryption = std::move(value); }
/**
* <p>The encryption settings, if any, that Elastic Transcoder needs to decyrpt
* your caption sources, or that you want Elastic Transcoder to apply to your
* caption sources.</p>
*/
inline CaptionSource& WithEncryption(const Encryption& value) { SetEncryption(value); return *this;}
/**
* <p>The encryption settings, if any, that Elastic Transcoder needs to decyrpt
* your caption sources, or that you want Elastic Transcoder to apply to your
* caption sources.</p>
*/
inline CaptionSource& WithEncryption(Encryption&& value) { SetEncryption(std::move(value)); return *this;}
private:
Aws::String m_key;
bool m_keyHasBeenSet;
Aws::String m_language;
bool m_languageHasBeenSet;
Aws::String m_timeOffset;
bool m_timeOffsetHasBeenSet;
Aws::String m_label;
bool m_labelHasBeenSet;
Encryption m_encryption;
bool m_encryptionHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,97 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/elastictranscoder/model/CaptionFormat.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The captions to be created, if any.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/Captions">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API Captions
{
public:
Captions();
Captions(Aws::Utils::Json::JsonView jsonValue);
Captions& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The array of file formats for the output captions. If you leave this value
* blank, Elastic Transcoder returns an error.</p>
*/
inline const Aws::Vector<CaptionFormat>& GetCaptionFormats() const{ return m_captionFormats; }
/**
* <p>The array of file formats for the output captions. If you leave this value
* blank, Elastic Transcoder returns an error.</p>
*/
inline bool CaptionFormatsHasBeenSet() const { return m_captionFormatsHasBeenSet; }
/**
* <p>The array of file formats for the output captions. If you leave this value
* blank, Elastic Transcoder returns an error.</p>
*/
inline void SetCaptionFormats(const Aws::Vector<CaptionFormat>& value) { m_captionFormatsHasBeenSet = true; m_captionFormats = value; }
/**
* <p>The array of file formats for the output captions. If you leave this value
* blank, Elastic Transcoder returns an error.</p>
*/
inline void SetCaptionFormats(Aws::Vector<CaptionFormat>&& value) { m_captionFormatsHasBeenSet = true; m_captionFormats = std::move(value); }
/**
* <p>The array of file formats for the output captions. If you leave this value
* blank, Elastic Transcoder returns an error.</p>
*/
inline Captions& WithCaptionFormats(const Aws::Vector<CaptionFormat>& value) { SetCaptionFormats(value); return *this;}
/**
* <p>The array of file formats for the output captions. If you leave this value
* blank, Elastic Transcoder returns an error.</p>
*/
inline Captions& WithCaptionFormats(Aws::Vector<CaptionFormat>&& value) { SetCaptionFormats(std::move(value)); return *this;}
/**
* <p>The array of file formats for the output captions. If you leave this value
* blank, Elastic Transcoder returns an error.</p>
*/
inline Captions& AddCaptionFormats(const CaptionFormat& value) { m_captionFormatsHasBeenSet = true; m_captionFormats.push_back(value); return *this; }
/**
* <p>The array of file formats for the output captions. If you leave this value
* blank, Elastic Transcoder returns an error.</p>
*/
inline Captions& AddCaptionFormats(CaptionFormat&& value) { m_captionFormatsHasBeenSet = true; m_captionFormats.push_back(std::move(value)); return *this; }
private:
Aws::Vector<CaptionFormat> m_captionFormats;
bool m_captionFormatsHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,79 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/model/TimeSpan.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>Settings for one clip in a composition. All jobs in a playlist must have the
* same clip settings.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/Clip">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API Clip
{
public:
Clip();
Clip(Aws::Utils::Json::JsonView jsonValue);
Clip& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>Settings that determine when a clip begins and how long it lasts.</p>
*/
inline const TimeSpan& GetTimeSpan() const{ return m_timeSpan; }
/**
* <p>Settings that determine when a clip begins and how long it lasts.</p>
*/
inline bool TimeSpanHasBeenSet() const { return m_timeSpanHasBeenSet; }
/**
* <p>Settings that determine when a clip begins and how long it lasts.</p>
*/
inline void SetTimeSpan(const TimeSpan& value) { m_timeSpanHasBeenSet = true; m_timeSpan = value; }
/**
* <p>Settings that determine when a clip begins and how long it lasts.</p>
*/
inline void SetTimeSpan(TimeSpan&& value) { m_timeSpanHasBeenSet = true; m_timeSpan = std::move(value); }
/**
* <p>Settings that determine when a clip begins and how long it lasts.</p>
*/
inline Clip& WithTimeSpan(const TimeSpan& value) { SetTimeSpan(value); return *this;}
/**
* <p>Settings that determine when a clip begins and how long it lasts.</p>
*/
inline Clip& WithTimeSpan(TimeSpan&& value) { SetTimeSpan(std::move(value)); return *this;}
private:
TimeSpan m_timeSpan;
bool m_timeSpanHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,578 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/elastictranscoder/model/HlsContentProtection.h>
#include <aws/elastictranscoder/model/PlayReadyDrm.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>Information about the master playlist.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CreateJobPlaylist">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API CreateJobPlaylist
{
public:
CreateJobPlaylist();
CreateJobPlaylist(Aws::Utils::Json::JsonView jsonValue);
CreateJobPlaylist& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p> Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p> Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p> Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p> Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p> Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p> Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline CreateJobPlaylist& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p> Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline CreateJobPlaylist& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p> Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline CreateJobPlaylist& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline const Aws::String& GetFormat() const{ return m_format; }
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; }
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline void SetFormat(const Aws::String& value) { m_formatHasBeenSet = true; m_format = value; }
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline void SetFormat(Aws::String&& value) { m_formatHasBeenSet = true; m_format = std::move(value); }
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline void SetFormat(const char* value) { m_formatHasBeenSet = true; m_format.assign(value); }
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline CreateJobPlaylist& WithFormat(const Aws::String& value) { SetFormat(value); return *this;}
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline CreateJobPlaylist& WithFormat(Aws::String&& value) { SetFormat(std::move(value)); return *this;}
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline CreateJobPlaylist& WithFormat(const char* value) { SetFormat(value); return *this;}
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the <code>Outputs:Key</code> object. </p> <ul> <li> <p>If your
* output is not <code>HLS</code> or does not have a segment duration set, the name
* of the output file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline const Aws::Vector<Aws::String>& GetOutputKeys() const{ return m_outputKeys; }
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the <code>Outputs:Key</code> object. </p> <ul> <li> <p>If your
* output is not <code>HLS</code> or does not have a segment duration set, the name
* of the output file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline bool OutputKeysHasBeenSet() const { return m_outputKeysHasBeenSet; }
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the <code>Outputs:Key</code> object. </p> <ul> <li> <p>If your
* output is not <code>HLS</code> or does not have a segment duration set, the name
* of the output file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline void SetOutputKeys(const Aws::Vector<Aws::String>& value) { m_outputKeysHasBeenSet = true; m_outputKeys = value; }
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the <code>Outputs:Key</code> object. </p> <ul> <li> <p>If your
* output is not <code>HLS</code> or does not have a segment duration set, the name
* of the output file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline void SetOutputKeys(Aws::Vector<Aws::String>&& value) { m_outputKeysHasBeenSet = true; m_outputKeys = std::move(value); }
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the <code>Outputs:Key</code> object. </p> <ul> <li> <p>If your
* output is not <code>HLS</code> or does not have a segment duration set, the name
* of the output file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline CreateJobPlaylist& WithOutputKeys(const Aws::Vector<Aws::String>& value) { SetOutputKeys(value); return *this;}
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the <code>Outputs:Key</code> object. </p> <ul> <li> <p>If your
* output is not <code>HLS</code> or does not have a segment duration set, the name
* of the output file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline CreateJobPlaylist& WithOutputKeys(Aws::Vector<Aws::String>&& value) { SetOutputKeys(std::move(value)); return *this;}
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the <code>Outputs:Key</code> object. </p> <ul> <li> <p>If your
* output is not <code>HLS</code> or does not have a segment duration set, the name
* of the output file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline CreateJobPlaylist& AddOutputKeys(const Aws::String& value) { m_outputKeysHasBeenSet = true; m_outputKeys.push_back(value); return *this; }
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the <code>Outputs:Key</code> object. </p> <ul> <li> <p>If your
* output is not <code>HLS</code> or does not have a segment duration set, the name
* of the output file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline CreateJobPlaylist& AddOutputKeys(Aws::String&& value) { m_outputKeysHasBeenSet = true; m_outputKeys.push_back(std::move(value)); return *this; }
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the <code>Outputs:Key</code> object. </p> <ul> <li> <p>If your
* output is not <code>HLS</code> or does not have a segment duration set, the name
* of the output file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline CreateJobPlaylist& AddOutputKeys(const char* value) { m_outputKeysHasBeenSet = true; m_outputKeys.push_back(value); return *this; }
/**
* <p>The HLS content protection settings, if any, that you want Elastic Transcoder
* to apply to the output files associated with this playlist.</p>
*/
inline const HlsContentProtection& GetHlsContentProtection() const{ return m_hlsContentProtection; }
/**
* <p>The HLS content protection settings, if any, that you want Elastic Transcoder
* to apply to the output files associated with this playlist.</p>
*/
inline bool HlsContentProtectionHasBeenSet() const { return m_hlsContentProtectionHasBeenSet; }
/**
* <p>The HLS content protection settings, if any, that you want Elastic Transcoder
* to apply to the output files associated with this playlist.</p>
*/
inline void SetHlsContentProtection(const HlsContentProtection& value) { m_hlsContentProtectionHasBeenSet = true; m_hlsContentProtection = value; }
/**
* <p>The HLS content protection settings, if any, that you want Elastic Transcoder
* to apply to the output files associated with this playlist.</p>
*/
inline void SetHlsContentProtection(HlsContentProtection&& value) { m_hlsContentProtectionHasBeenSet = true; m_hlsContentProtection = std::move(value); }
/**
* <p>The HLS content protection settings, if any, that you want Elastic Transcoder
* to apply to the output files associated with this playlist.</p>
*/
inline CreateJobPlaylist& WithHlsContentProtection(const HlsContentProtection& value) { SetHlsContentProtection(value); return *this;}
/**
* <p>The HLS content protection settings, if any, that you want Elastic Transcoder
* to apply to the output files associated with this playlist.</p>
*/
inline CreateJobPlaylist& WithHlsContentProtection(HlsContentProtection&& value) { SetHlsContentProtection(std::move(value)); return *this;}
/**
* <p>The DRM settings, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline const PlayReadyDrm& GetPlayReadyDrm() const{ return m_playReadyDrm; }
/**
* <p>The DRM settings, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline bool PlayReadyDrmHasBeenSet() const { return m_playReadyDrmHasBeenSet; }
/**
* <p>The DRM settings, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline void SetPlayReadyDrm(const PlayReadyDrm& value) { m_playReadyDrmHasBeenSet = true; m_playReadyDrm = value; }
/**
* <p>The DRM settings, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline void SetPlayReadyDrm(PlayReadyDrm&& value) { m_playReadyDrmHasBeenSet = true; m_playReadyDrm = std::move(value); }
/**
* <p>The DRM settings, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline CreateJobPlaylist& WithPlayReadyDrm(const PlayReadyDrm& value) { SetPlayReadyDrm(value); return *this;}
/**
* <p>The DRM settings, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline CreateJobPlaylist& WithPlayReadyDrm(PlayReadyDrm&& value) { SetPlayReadyDrm(std::move(value)); return *this;}
private:
Aws::String m_name;
bool m_nameHasBeenSet;
Aws::String m_format;
bool m_formatHasBeenSet;
Aws::Vector<Aws::String> m_outputKeys;
bool m_outputKeysHasBeenSet;
HlsContentProtection m_hlsContentProtection;
bool m_hlsContentProtectionHasBeenSet;
PlayReadyDrm m_playReadyDrm;
bool m_playReadyDrmHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,562 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/ElasticTranscoderRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/elastictranscoder/model/JobInput.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/elastictranscoder/model/CreateJobOutput.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <aws/elastictranscoder/model/CreateJobPlaylist.h>
#include <utility>
namespace Aws
{
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>CreateJobRequest</code> structure.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CreateJobRequest">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API CreateJobRequest : public ElasticTranscoderRequest
{
public:
CreateJobRequest();
// 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 "CreateJob"; }
Aws::String SerializePayload() const override;
/**
* <p>The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files.</p>
*/
inline const Aws::String& GetPipelineId() const{ return m_pipelineId; }
/**
* <p>The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files.</p>
*/
inline bool PipelineIdHasBeenSet() const { return m_pipelineIdHasBeenSet; }
/**
* <p>The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files.</p>
*/
inline void SetPipelineId(const Aws::String& value) { m_pipelineIdHasBeenSet = true; m_pipelineId = value; }
/**
* <p>The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files.</p>
*/
inline void SetPipelineId(Aws::String&& value) { m_pipelineIdHasBeenSet = true; m_pipelineId = std::move(value); }
/**
* <p>The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files.</p>
*/
inline void SetPipelineId(const char* value) { m_pipelineIdHasBeenSet = true; m_pipelineId.assign(value); }
/**
* <p>The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files.</p>
*/
inline CreateJobRequest& WithPipelineId(const Aws::String& value) { SetPipelineId(value); return *this;}
/**
* <p>The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files.</p>
*/
inline CreateJobRequest& WithPipelineId(Aws::String&& value) { SetPipelineId(std::move(value)); return *this;}
/**
* <p>The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files.</p>
*/
inline CreateJobRequest& WithPipelineId(const char* value) { SetPipelineId(value); return *this;}
/**
* <p>A section of the request body that provides information about the file that
* is being transcoded.</p>
*/
inline const JobInput& GetInput() const{ return m_input; }
/**
* <p>A section of the request body that provides information about the file that
* is being transcoded.</p>
*/
inline bool InputHasBeenSet() const { return m_inputHasBeenSet; }
/**
* <p>A section of the request body that provides information about the file that
* is being transcoded.</p>
*/
inline void SetInput(const JobInput& value) { m_inputHasBeenSet = true; m_input = value; }
/**
* <p>A section of the request body that provides information about the file that
* is being transcoded.</p>
*/
inline void SetInput(JobInput&& value) { m_inputHasBeenSet = true; m_input = std::move(value); }
/**
* <p>A section of the request body that provides information about the file that
* is being transcoded.</p>
*/
inline CreateJobRequest& WithInput(const JobInput& value) { SetInput(value); return *this;}
/**
* <p>A section of the request body that provides information about the file that
* is being transcoded.</p>
*/
inline CreateJobRequest& WithInput(JobInput&& value) { SetInput(std::move(value)); return *this;}
/**
* <p>A section of the request body that provides information about the files that
* are being transcoded.</p>
*/
inline const Aws::Vector<JobInput>& GetInputs() const{ return m_inputs; }
/**
* <p>A section of the request body that provides information about the files that
* are being transcoded.</p>
*/
inline bool InputsHasBeenSet() const { return m_inputsHasBeenSet; }
/**
* <p>A section of the request body that provides information about the files that
* are being transcoded.</p>
*/
inline void SetInputs(const Aws::Vector<JobInput>& value) { m_inputsHasBeenSet = true; m_inputs = value; }
/**
* <p>A section of the request body that provides information about the files that
* are being transcoded.</p>
*/
inline void SetInputs(Aws::Vector<JobInput>&& value) { m_inputsHasBeenSet = true; m_inputs = std::move(value); }
/**
* <p>A section of the request body that provides information about the files that
* are being transcoded.</p>
*/
inline CreateJobRequest& WithInputs(const Aws::Vector<JobInput>& value) { SetInputs(value); return *this;}
/**
* <p>A section of the request body that provides information about the files that
* are being transcoded.</p>
*/
inline CreateJobRequest& WithInputs(Aws::Vector<JobInput>&& value) { SetInputs(std::move(value)); return *this;}
/**
* <p>A section of the request body that provides information about the files that
* are being transcoded.</p>
*/
inline CreateJobRequest& AddInputs(const JobInput& value) { m_inputsHasBeenSet = true; m_inputs.push_back(value); return *this; }
/**
* <p>A section of the request body that provides information about the files that
* are being transcoded.</p>
*/
inline CreateJobRequest& AddInputs(JobInput&& value) { m_inputsHasBeenSet = true; m_inputs.push_back(std::move(value)); return *this; }
/**
* <p> A section of the request body that provides information about the transcoded
* (target) file. We strongly recommend that you use the <code>Outputs</code>
* syntax instead of the <code>Output</code> syntax. </p>
*/
inline const CreateJobOutput& GetOutput() const{ return m_output; }
/**
* <p> A section of the request body that provides information about the transcoded
* (target) file. We strongly recommend that you use the <code>Outputs</code>
* syntax instead of the <code>Output</code> syntax. </p>
*/
inline bool OutputHasBeenSet() const { return m_outputHasBeenSet; }
/**
* <p> A section of the request body that provides information about the transcoded
* (target) file. We strongly recommend that you use the <code>Outputs</code>
* syntax instead of the <code>Output</code> syntax. </p>
*/
inline void SetOutput(const CreateJobOutput& value) { m_outputHasBeenSet = true; m_output = value; }
/**
* <p> A section of the request body that provides information about the transcoded
* (target) file. We strongly recommend that you use the <code>Outputs</code>
* syntax instead of the <code>Output</code> syntax. </p>
*/
inline void SetOutput(CreateJobOutput&& value) { m_outputHasBeenSet = true; m_output = std::move(value); }
/**
* <p> A section of the request body that provides information about the transcoded
* (target) file. We strongly recommend that you use the <code>Outputs</code>
* syntax instead of the <code>Output</code> syntax. </p>
*/
inline CreateJobRequest& WithOutput(const CreateJobOutput& value) { SetOutput(value); return *this;}
/**
* <p> A section of the request body that provides information about the transcoded
* (target) file. We strongly recommend that you use the <code>Outputs</code>
* syntax instead of the <code>Output</code> syntax. </p>
*/
inline CreateJobRequest& WithOutput(CreateJobOutput&& value) { SetOutput(std::move(value)); return *this;}
/**
* <p> A section of the request body that provides information about the transcoded
* (target) files. We recommend that you use the <code>Outputs</code> syntax
* instead of the <code>Output</code> syntax. </p>
*/
inline const Aws::Vector<CreateJobOutput>& GetOutputs() const{ return m_outputs; }
/**
* <p> A section of the request body that provides information about the transcoded
* (target) files. We recommend that you use the <code>Outputs</code> syntax
* instead of the <code>Output</code> syntax. </p>
*/
inline bool OutputsHasBeenSet() const { return m_outputsHasBeenSet; }
/**
* <p> A section of the request body that provides information about the transcoded
* (target) files. We recommend that you use the <code>Outputs</code> syntax
* instead of the <code>Output</code> syntax. </p>
*/
inline void SetOutputs(const Aws::Vector<CreateJobOutput>& value) { m_outputsHasBeenSet = true; m_outputs = value; }
/**
* <p> A section of the request body that provides information about the transcoded
* (target) files. We recommend that you use the <code>Outputs</code> syntax
* instead of the <code>Output</code> syntax. </p>
*/
inline void SetOutputs(Aws::Vector<CreateJobOutput>&& value) { m_outputsHasBeenSet = true; m_outputs = std::move(value); }
/**
* <p> A section of the request body that provides information about the transcoded
* (target) files. We recommend that you use the <code>Outputs</code> syntax
* instead of the <code>Output</code> syntax. </p>
*/
inline CreateJobRequest& WithOutputs(const Aws::Vector<CreateJobOutput>& value) { SetOutputs(value); return *this;}
/**
* <p> A section of the request body that provides information about the transcoded
* (target) files. We recommend that you use the <code>Outputs</code> syntax
* instead of the <code>Output</code> syntax. </p>
*/
inline CreateJobRequest& WithOutputs(Aws::Vector<CreateJobOutput>&& value) { SetOutputs(std::move(value)); return *this;}
/**
* <p> A section of the request body that provides information about the transcoded
* (target) files. We recommend that you use the <code>Outputs</code> syntax
* instead of the <code>Output</code> syntax. </p>
*/
inline CreateJobRequest& AddOutputs(const CreateJobOutput& value) { m_outputsHasBeenSet = true; m_outputs.push_back(value); return *this; }
/**
* <p> A section of the request body that provides information about the transcoded
* (target) files. We recommend that you use the <code>Outputs</code> syntax
* instead of the <code>Output</code> syntax. </p>
*/
inline CreateJobRequest& AddOutputs(CreateJobOutput&& value) { m_outputsHasBeenSet = true; m_outputs.push_back(std::move(value)); return *this; }
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists.</p>
*/
inline const Aws::String& GetOutputKeyPrefix() const{ return m_outputKeyPrefix; }
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists.</p>
*/
inline bool OutputKeyPrefixHasBeenSet() const { return m_outputKeyPrefixHasBeenSet; }
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists.</p>
*/
inline void SetOutputKeyPrefix(const Aws::String& value) { m_outputKeyPrefixHasBeenSet = true; m_outputKeyPrefix = value; }
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists.</p>
*/
inline void SetOutputKeyPrefix(Aws::String&& value) { m_outputKeyPrefixHasBeenSet = true; m_outputKeyPrefix = std::move(value); }
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists.</p>
*/
inline void SetOutputKeyPrefix(const char* value) { m_outputKeyPrefixHasBeenSet = true; m_outputKeyPrefix.assign(value); }
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists.</p>
*/
inline CreateJobRequest& WithOutputKeyPrefix(const Aws::String& value) { SetOutputKeyPrefix(value); return *this;}
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists.</p>
*/
inline CreateJobRequest& WithOutputKeyPrefix(Aws::String&& value) { SetOutputKeyPrefix(std::move(value)); return *this;}
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists.</p>
*/
inline CreateJobRequest& WithOutputKeyPrefix(const char* value) { SetOutputKeyPrefix(value); return *this;}
/**
* <p>If you specify a preset in <code>PresetId</code> for which the value of
* <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS), Playlists
* contains information about the master playlists that you want Elastic Transcoder
* to create.</p> <p>The maximum number of master playlists in a job is 30.</p>
*/
inline const Aws::Vector<CreateJobPlaylist>& GetPlaylists() const{ return m_playlists; }
/**
* <p>If you specify a preset in <code>PresetId</code> for which the value of
* <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS), Playlists
* contains information about the master playlists that you want Elastic Transcoder
* to create.</p> <p>The maximum number of master playlists in a job is 30.</p>
*/
inline bool PlaylistsHasBeenSet() const { return m_playlistsHasBeenSet; }
/**
* <p>If you specify a preset in <code>PresetId</code> for which the value of
* <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS), Playlists
* contains information about the master playlists that you want Elastic Transcoder
* to create.</p> <p>The maximum number of master playlists in a job is 30.</p>
*/
inline void SetPlaylists(const Aws::Vector<CreateJobPlaylist>& value) { m_playlistsHasBeenSet = true; m_playlists = value; }
/**
* <p>If you specify a preset in <code>PresetId</code> for which the value of
* <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS), Playlists
* contains information about the master playlists that you want Elastic Transcoder
* to create.</p> <p>The maximum number of master playlists in a job is 30.</p>
*/
inline void SetPlaylists(Aws::Vector<CreateJobPlaylist>&& value) { m_playlistsHasBeenSet = true; m_playlists = std::move(value); }
/**
* <p>If you specify a preset in <code>PresetId</code> for which the value of
* <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS), Playlists
* contains information about the master playlists that you want Elastic Transcoder
* to create.</p> <p>The maximum number of master playlists in a job is 30.</p>
*/
inline CreateJobRequest& WithPlaylists(const Aws::Vector<CreateJobPlaylist>& value) { SetPlaylists(value); return *this;}
/**
* <p>If you specify a preset in <code>PresetId</code> for which the value of
* <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS), Playlists
* contains information about the master playlists that you want Elastic Transcoder
* to create.</p> <p>The maximum number of master playlists in a job is 30.</p>
*/
inline CreateJobRequest& WithPlaylists(Aws::Vector<CreateJobPlaylist>&& value) { SetPlaylists(std::move(value)); return *this;}
/**
* <p>If you specify a preset in <code>PresetId</code> for which the value of
* <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS), Playlists
* contains information about the master playlists that you want Elastic Transcoder
* to create.</p> <p>The maximum number of master playlists in a job is 30.</p>
*/
inline CreateJobRequest& AddPlaylists(const CreateJobPlaylist& value) { m_playlistsHasBeenSet = true; m_playlists.push_back(value); return *this; }
/**
* <p>If you specify a preset in <code>PresetId</code> for which the value of
* <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS), Playlists
* contains information about the master playlists that you want Elastic Transcoder
* to create.</p> <p>The maximum number of master playlists in a job is 30.</p>
*/
inline CreateJobRequest& AddPlaylists(CreateJobPlaylist&& value) { m_playlistsHasBeenSet = true; m_playlists.push_back(std::move(value)); return *this; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p>
*/
inline const Aws::Map<Aws::String, Aws::String>& GetUserMetadata() const{ return m_userMetadata; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p>
*/
inline bool UserMetadataHasBeenSet() const { return m_userMetadataHasBeenSet; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p>
*/
inline void SetUserMetadata(const Aws::Map<Aws::String, Aws::String>& value) { m_userMetadataHasBeenSet = true; m_userMetadata = value; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p>
*/
inline void SetUserMetadata(Aws::Map<Aws::String, Aws::String>&& value) { m_userMetadataHasBeenSet = true; m_userMetadata = std::move(value); }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p>
*/
inline CreateJobRequest& WithUserMetadata(const Aws::Map<Aws::String, Aws::String>& value) { SetUserMetadata(value); return *this;}
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p>
*/
inline CreateJobRequest& WithUserMetadata(Aws::Map<Aws::String, Aws::String>&& value) { SetUserMetadata(std::move(value)); return *this;}
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p>
*/
inline CreateJobRequest& AddUserMetadata(const Aws::String& key, const Aws::String& value) { m_userMetadataHasBeenSet = true; m_userMetadata.emplace(key, value); return *this; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p>
*/
inline CreateJobRequest& AddUserMetadata(Aws::String&& key, const Aws::String& value) { m_userMetadataHasBeenSet = true; m_userMetadata.emplace(std::move(key), value); return *this; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p>
*/
inline CreateJobRequest& AddUserMetadata(const Aws::String& key, Aws::String&& value) { m_userMetadataHasBeenSet = true; m_userMetadata.emplace(key, std::move(value)); return *this; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p>
*/
inline CreateJobRequest& AddUserMetadata(Aws::String&& key, Aws::String&& value) { m_userMetadataHasBeenSet = true; m_userMetadata.emplace(std::move(key), std::move(value)); return *this; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p>
*/
inline CreateJobRequest& AddUserMetadata(const char* key, Aws::String&& value) { m_userMetadataHasBeenSet = true; m_userMetadata.emplace(key, std::move(value)); return *this; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p>
*/
inline CreateJobRequest& AddUserMetadata(Aws::String&& key, const char* value) { m_userMetadataHasBeenSet = true; m_userMetadata.emplace(std::move(key), value); return *this; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p>
*/
inline CreateJobRequest& AddUserMetadata(const char* key, const char* value) { m_userMetadataHasBeenSet = true; m_userMetadata.emplace(key, value); return *this; }
private:
Aws::String m_pipelineId;
bool m_pipelineIdHasBeenSet;
JobInput m_input;
bool m_inputHasBeenSet;
Aws::Vector<JobInput> m_inputs;
bool m_inputsHasBeenSet;
CreateJobOutput m_output;
bool m_outputHasBeenSet;
Aws::Vector<CreateJobOutput> m_outputs;
bool m_outputsHasBeenSet;
Aws::String m_outputKeyPrefix;
bool m_outputKeyPrefixHasBeenSet;
Aws::Vector<CreateJobPlaylist> m_playlists;
bool m_playlistsHasBeenSet;
Aws::Map<Aws::String, Aws::String> m_userMetadata;
bool m_userMetadataHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,77 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/model/Job.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The CreateJobResponse structure.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CreateJobResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API CreateJobResult
{
public:
CreateJobResult();
CreateJobResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreateJobResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A section of the response body that provides information about the job that
* is created.</p>
*/
inline const Job& GetJob() const{ return m_job; }
/**
* <p>A section of the response body that provides information about the job that
* is created.</p>
*/
inline void SetJob(const Job& value) { m_job = value; }
/**
* <p>A section of the response body that provides information about the job that
* is created.</p>
*/
inline void SetJob(Job&& value) { m_job = std::move(value); }
/**
* <p>A section of the response body that provides information about the job that
* is created.</p>
*/
inline CreateJobResult& WithJob(const Job& value) { SetJob(value); return *this;}
/**
* <p>A section of the response body that provides information about the job that
* is created.</p>
*/
inline CreateJobResult& WithJob(Job&& value) { SetJob(std::move(value)); return *this;}
private:
Job m_job;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,139 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/model/Pipeline.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/elastictranscoder/model/Warning.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>When you create a pipeline, Elastic Transcoder returns the values that you
* specified in the request.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CreatePipelineResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API CreatePipelineResult
{
public:
CreatePipelineResult();
CreatePipelineResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreatePipelineResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A section of the response body that provides information about the pipeline
* that is created.</p>
*/
inline const Pipeline& GetPipeline() const{ return m_pipeline; }
/**
* <p>A section of the response body that provides information about the pipeline
* that is created.</p>
*/
inline void SetPipeline(const Pipeline& value) { m_pipeline = value; }
/**
* <p>A section of the response body that provides information about the pipeline
* that is created.</p>
*/
inline void SetPipeline(Pipeline&& value) { m_pipeline = std::move(value); }
/**
* <p>A section of the response body that provides information about the pipeline
* that is created.</p>
*/
inline CreatePipelineResult& WithPipeline(const Pipeline& value) { SetPipeline(value); return *this;}
/**
* <p>A section of the response body that provides information about the pipeline
* that is created.</p>
*/
inline CreatePipelineResult& WithPipeline(Pipeline&& value) { SetPipeline(std::move(value)); return *this;}
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline const Aws::Vector<Warning>& GetWarnings() const{ return m_warnings; }
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline void SetWarnings(const Aws::Vector<Warning>& value) { m_warnings = value; }
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline void SetWarnings(Aws::Vector<Warning>&& value) { m_warnings = std::move(value); }
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline CreatePipelineResult& WithWarnings(const Aws::Vector<Warning>& value) { SetWarnings(value); return *this;}
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline CreatePipelineResult& WithWarnings(Aws::Vector<Warning>&& value) { SetWarnings(std::move(value)); return *this;}
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline CreatePipelineResult& AddWarnings(const Warning& value) { m_warnings.push_back(value); return *this; }
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline CreatePipelineResult& AddWarnings(Warning&& value) { m_warnings.push_back(std::move(value)); return *this; }
private:
Pipeline m_pipeline;
Aws::Vector<Warning> m_warnings;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,317 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/ElasticTranscoderRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/elastictranscoder/model/VideoParameters.h>
#include <aws/elastictranscoder/model/AudioParameters.h>
#include <aws/elastictranscoder/model/Thumbnails.h>
#include <utility>
namespace Aws
{
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>CreatePresetRequest</code> structure.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CreatePresetRequest">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API CreatePresetRequest : public ElasticTranscoderRequest
{
public:
CreatePresetRequest();
// 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 "CreatePreset"; }
Aws::String SerializePayload() const override;
/**
* <p>The name of the preset. We recommend that the name be unique within the AWS
* account, but uniqueness is not enforced.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the preset. We recommend that the name be unique within the AWS
* account, but uniqueness is not enforced.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name of the preset. We recommend that the name be unique within the AWS
* account, but uniqueness is not enforced.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name of the preset. We recommend that the name be unique within the AWS
* account, but uniqueness is not enforced.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name of the preset. We recommend that the name be unique within the AWS
* account, but uniqueness is not enforced.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name of the preset. We recommend that the name be unique within the AWS
* account, but uniqueness is not enforced.</p>
*/
inline CreatePresetRequest& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the preset. We recommend that the name be unique within the AWS
* account, but uniqueness is not enforced.</p>
*/
inline CreatePresetRequest& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the preset. We recommend that the name be unique within the AWS
* account, but uniqueness is not enforced.</p>
*/
inline CreatePresetRequest& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>A description of the preset.</p>
*/
inline const Aws::String& GetDescription() const{ return m_description; }
/**
* <p>A description of the preset.</p>
*/
inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
/**
* <p>A description of the preset.</p>
*/
inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
/**
* <p>A description of the preset.</p>
*/
inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
/**
* <p>A description of the preset.</p>
*/
inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
/**
* <p>A description of the preset.</p>
*/
inline CreatePresetRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
/**
* <p>A description of the preset.</p>
*/
inline CreatePresetRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
/**
* <p>A description of the preset.</p>
*/
inline CreatePresetRequest& WithDescription(const char* value) { SetDescription(value); return *this;}
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline const Aws::String& GetContainer() const{ return m_container; }
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline bool ContainerHasBeenSet() const { return m_containerHasBeenSet; }
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline void SetContainer(const Aws::String& value) { m_containerHasBeenSet = true; m_container = value; }
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline void SetContainer(Aws::String&& value) { m_containerHasBeenSet = true; m_container = std::move(value); }
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline void SetContainer(const char* value) { m_containerHasBeenSet = true; m_container.assign(value); }
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline CreatePresetRequest& WithContainer(const Aws::String& value) { SetContainer(value); return *this;}
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline CreatePresetRequest& WithContainer(Aws::String&& value) { SetContainer(std::move(value)); return *this;}
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline CreatePresetRequest& WithContainer(const char* value) { SetContainer(value); return *this;}
/**
* <p>A section of the request body that specifies the video parameters.</p>
*/
inline const VideoParameters& GetVideo() const{ return m_video; }
/**
* <p>A section of the request body that specifies the video parameters.</p>
*/
inline bool VideoHasBeenSet() const { return m_videoHasBeenSet; }
/**
* <p>A section of the request body that specifies the video parameters.</p>
*/
inline void SetVideo(const VideoParameters& value) { m_videoHasBeenSet = true; m_video = value; }
/**
* <p>A section of the request body that specifies the video parameters.</p>
*/
inline void SetVideo(VideoParameters&& value) { m_videoHasBeenSet = true; m_video = std::move(value); }
/**
* <p>A section of the request body that specifies the video parameters.</p>
*/
inline CreatePresetRequest& WithVideo(const VideoParameters& value) { SetVideo(value); return *this;}
/**
* <p>A section of the request body that specifies the video parameters.</p>
*/
inline CreatePresetRequest& WithVideo(VideoParameters&& value) { SetVideo(std::move(value)); return *this;}
/**
* <p>A section of the request body that specifies the audio parameters.</p>
*/
inline const AudioParameters& GetAudio() const{ return m_audio; }
/**
* <p>A section of the request body that specifies the audio parameters.</p>
*/
inline bool AudioHasBeenSet() const { return m_audioHasBeenSet; }
/**
* <p>A section of the request body that specifies the audio parameters.</p>
*/
inline void SetAudio(const AudioParameters& value) { m_audioHasBeenSet = true; m_audio = value; }
/**
* <p>A section of the request body that specifies the audio parameters.</p>
*/
inline void SetAudio(AudioParameters&& value) { m_audioHasBeenSet = true; m_audio = std::move(value); }
/**
* <p>A section of the request body that specifies the audio parameters.</p>
*/
inline CreatePresetRequest& WithAudio(const AudioParameters& value) { SetAudio(value); return *this;}
/**
* <p>A section of the request body that specifies the audio parameters.</p>
*/
inline CreatePresetRequest& WithAudio(AudioParameters&& value) { SetAudio(std::move(value)); return *this;}
/**
* <p>A section of the request body that specifies the thumbnail parameters, if
* any.</p>
*/
inline const Thumbnails& GetThumbnails() const{ return m_thumbnails; }
/**
* <p>A section of the request body that specifies the thumbnail parameters, if
* any.</p>
*/
inline bool ThumbnailsHasBeenSet() const { return m_thumbnailsHasBeenSet; }
/**
* <p>A section of the request body that specifies the thumbnail parameters, if
* any.</p>
*/
inline void SetThumbnails(const Thumbnails& value) { m_thumbnailsHasBeenSet = true; m_thumbnails = value; }
/**
* <p>A section of the request body that specifies the thumbnail parameters, if
* any.</p>
*/
inline void SetThumbnails(Thumbnails&& value) { m_thumbnailsHasBeenSet = true; m_thumbnails = std::move(value); }
/**
* <p>A section of the request body that specifies the thumbnail parameters, if
* any.</p>
*/
inline CreatePresetRequest& WithThumbnails(const Thumbnails& value) { SetThumbnails(value); return *this;}
/**
* <p>A section of the request body that specifies the thumbnail parameters, if
* any.</p>
*/
inline CreatePresetRequest& WithThumbnails(Thumbnails&& value) { SetThumbnails(std::move(value)); return *this;}
private:
Aws::String m_name;
bool m_nameHasBeenSet;
Aws::String m_description;
bool m_descriptionHasBeenSet;
Aws::String m_container;
bool m_containerHasBeenSet;
VideoParameters m_video;
bool m_videoHasBeenSet;
AudioParameters m_audio;
bool m_audioHasBeenSet;
Thumbnails m_thumbnails;
bool m_thumbnailsHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,138 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/model/Preset.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>CreatePresetResponse</code> structure.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/CreatePresetResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API CreatePresetResult
{
public:
CreatePresetResult();
CreatePresetResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
CreatePresetResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A section of the response body that provides information about the preset
* that is created.</p>
*/
inline const Preset& GetPreset() const{ return m_preset; }
/**
* <p>A section of the response body that provides information about the preset
* that is created.</p>
*/
inline void SetPreset(const Preset& value) { m_preset = value; }
/**
* <p>A section of the response body that provides information about the preset
* that is created.</p>
*/
inline void SetPreset(Preset&& value) { m_preset = std::move(value); }
/**
* <p>A section of the response body that provides information about the preset
* that is created.</p>
*/
inline CreatePresetResult& WithPreset(const Preset& value) { SetPreset(value); return *this;}
/**
* <p>A section of the response body that provides information about the preset
* that is created.</p>
*/
inline CreatePresetResult& WithPreset(Preset&& value) { SetPreset(std::move(value)); return *this;}
/**
* <p>If the preset settings don't comply with the standards for the video codec
* but Elastic Transcoder created the preset, this message explains the reason the
* preset settings don't meet the standard. Elastic Transcoder created the preset
* because the settings might produce acceptable output.</p>
*/
inline const Aws::String& GetWarning() const{ return m_warning; }
/**
* <p>If the preset settings don't comply with the standards for the video codec
* but Elastic Transcoder created the preset, this message explains the reason the
* preset settings don't meet the standard. Elastic Transcoder created the preset
* because the settings might produce acceptable output.</p>
*/
inline void SetWarning(const Aws::String& value) { m_warning = value; }
/**
* <p>If the preset settings don't comply with the standards for the video codec
* but Elastic Transcoder created the preset, this message explains the reason the
* preset settings don't meet the standard. Elastic Transcoder created the preset
* because the settings might produce acceptable output.</p>
*/
inline void SetWarning(Aws::String&& value) { m_warning = std::move(value); }
/**
* <p>If the preset settings don't comply with the standards for the video codec
* but Elastic Transcoder created the preset, this message explains the reason the
* preset settings don't meet the standard. Elastic Transcoder created the preset
* because the settings might produce acceptable output.</p>
*/
inline void SetWarning(const char* value) { m_warning.assign(value); }
/**
* <p>If the preset settings don't comply with the standards for the video codec
* but Elastic Transcoder created the preset, this message explains the reason the
* preset settings don't meet the standard. Elastic Transcoder created the preset
* because the settings might produce acceptable output.</p>
*/
inline CreatePresetResult& WithWarning(const Aws::String& value) { SetWarning(value); return *this;}
/**
* <p>If the preset settings don't comply with the standards for the video codec
* but Elastic Transcoder created the preset, this message explains the reason the
* preset settings don't meet the standard. Elastic Transcoder created the preset
* because the settings might produce acceptable output.</p>
*/
inline CreatePresetResult& WithWarning(Aws::String&& value) { SetWarning(std::move(value)); return *this;}
/**
* <p>If the preset settings don't comply with the standards for the video codec
* but Elastic Transcoder created the preset, this message explains the reason the
* preset settings don't meet the standard. Elastic Transcoder created the preset
* because the settings might produce acceptable output.</p>
*/
inline CreatePresetResult& WithWarning(const char* value) { SetWarning(value); return *this;}
private:
Preset m_preset;
Aws::String m_warning;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,87 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/ElasticTranscoderRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>DeletePipelineRequest</code> structure.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/DeletePipelineRequest">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API DeletePipelineRequest : public ElasticTranscoderRequest
{
public:
DeletePipelineRequest();
// 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 "DeletePipeline"; }
Aws::String SerializePayload() const override;
/**
* <p>The identifier of the pipeline that you want to delete.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The identifier of the pipeline that you want to delete.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The identifier of the pipeline that you want to delete.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The identifier of the pipeline that you want to delete.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The identifier of the pipeline that you want to delete.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The identifier of the pipeline that you want to delete.</p>
*/
inline DeletePipelineRequest& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The identifier of the pipeline that you want to delete.</p>
*/
inline DeletePipelineRequest& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The identifier of the pipeline that you want to delete.</p>
*/
inline DeletePipelineRequest& WithId(const char* value) { SetId(value); return *this;}
private:
Aws::String m_id;
bool m_idHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,42 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>DeletePipelineResponse</code> structure.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/DeletePipelineResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API DeletePipelineResult
{
public:
DeletePipelineResult();
DeletePipelineResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DeletePipelineResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,94 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/ElasticTranscoderRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>DeletePresetRequest</code> structure.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/DeletePresetRequest">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API DeletePresetRequest : public ElasticTranscoderRequest
{
public:
DeletePresetRequest();
// 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 "DeletePreset"; }
Aws::String SerializePayload() const override;
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline DeletePresetRequest& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline DeletePresetRequest& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline DeletePresetRequest& WithId(const char* value) { SetId(value); return *this;}
private:
Aws::String m_id;
bool m_idHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,42 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>DeletePresetResponse</code> structure.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/DeletePresetResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API DeletePresetResult
{
public:
DeletePresetResult();
DeletePresetResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
DeletePresetResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,185 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The detected properties of the input file. Elastic Transcoder identifies
* these values from the input file.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/DetectedProperties">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API DetectedProperties
{
public:
DetectedProperties();
DetectedProperties(Aws::Utils::Json::JsonView jsonValue);
DetectedProperties& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The detected width of the input file, in pixels.</p>
*/
inline int GetWidth() const{ return m_width; }
/**
* <p>The detected width of the input file, in pixels.</p>
*/
inline bool WidthHasBeenSet() const { return m_widthHasBeenSet; }
/**
* <p>The detected width of the input file, in pixels.</p>
*/
inline void SetWidth(int value) { m_widthHasBeenSet = true; m_width = value; }
/**
* <p>The detected width of the input file, in pixels.</p>
*/
inline DetectedProperties& WithWidth(int value) { SetWidth(value); return *this;}
/**
* <p>The detected height of the input file, in pixels.</p>
*/
inline int GetHeight() const{ return m_height; }
/**
* <p>The detected height of the input file, in pixels.</p>
*/
inline bool HeightHasBeenSet() const { return m_heightHasBeenSet; }
/**
* <p>The detected height of the input file, in pixels.</p>
*/
inline void SetHeight(int value) { m_heightHasBeenSet = true; m_height = value; }
/**
* <p>The detected height of the input file, in pixels.</p>
*/
inline DetectedProperties& WithHeight(int value) { SetHeight(value); return *this;}
/**
* <p>The detected frame rate of the input file, in frames per second.</p>
*/
inline const Aws::String& GetFrameRate() const{ return m_frameRate; }
/**
* <p>The detected frame rate of the input file, in frames per second.</p>
*/
inline bool FrameRateHasBeenSet() const { return m_frameRateHasBeenSet; }
/**
* <p>The detected frame rate of the input file, in frames per second.</p>
*/
inline void SetFrameRate(const Aws::String& value) { m_frameRateHasBeenSet = true; m_frameRate = value; }
/**
* <p>The detected frame rate of the input file, in frames per second.</p>
*/
inline void SetFrameRate(Aws::String&& value) { m_frameRateHasBeenSet = true; m_frameRate = std::move(value); }
/**
* <p>The detected frame rate of the input file, in frames per second.</p>
*/
inline void SetFrameRate(const char* value) { m_frameRateHasBeenSet = true; m_frameRate.assign(value); }
/**
* <p>The detected frame rate of the input file, in frames per second.</p>
*/
inline DetectedProperties& WithFrameRate(const Aws::String& value) { SetFrameRate(value); return *this;}
/**
* <p>The detected frame rate of the input file, in frames per second.</p>
*/
inline DetectedProperties& WithFrameRate(Aws::String&& value) { SetFrameRate(std::move(value)); return *this;}
/**
* <p>The detected frame rate of the input file, in frames per second.</p>
*/
inline DetectedProperties& WithFrameRate(const char* value) { SetFrameRate(value); return *this;}
/**
* <p>The detected file size of the input file, in bytes.</p>
*/
inline long long GetFileSize() const{ return m_fileSize; }
/**
* <p>The detected file size of the input file, in bytes.</p>
*/
inline bool FileSizeHasBeenSet() const { return m_fileSizeHasBeenSet; }
/**
* <p>The detected file size of the input file, in bytes.</p>
*/
inline void SetFileSize(long long value) { m_fileSizeHasBeenSet = true; m_fileSize = value; }
/**
* <p>The detected file size of the input file, in bytes.</p>
*/
inline DetectedProperties& WithFileSize(long long value) { SetFileSize(value); return *this;}
/**
* <p>The detected duration of the input file, in milliseconds.</p>
*/
inline long long GetDurationMillis() const{ return m_durationMillis; }
/**
* <p>The detected duration of the input file, in milliseconds.</p>
*/
inline bool DurationMillisHasBeenSet() const { return m_durationMillisHasBeenSet; }
/**
* <p>The detected duration of the input file, in milliseconds.</p>
*/
inline void SetDurationMillis(long long value) { m_durationMillisHasBeenSet = true; m_durationMillis = value; }
/**
* <p>The detected duration of the input file, in milliseconds.</p>
*/
inline DetectedProperties& WithDurationMillis(long long value) { SetDurationMillis(value); return *this;}
private:
int m_width;
bool m_widthHasBeenSet;
int m_height;
bool m_heightHasBeenSet;
Aws::String m_frameRate;
bool m_frameRateHasBeenSet;
long long m_fileSize;
bool m_fileSizeHasBeenSet;
long long m_durationMillis;
bool m_durationMillisHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,480 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The encryption settings, if any, that are used for decrypting your input
* files or encrypting your output files. If your input file is encrypted, you must
* specify the mode that Elastic Transcoder uses to decrypt your file, otherwise
* you must specify the mode you want Elastic Transcoder to use to encrypt your
* output files.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/Encryption">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API Encryption
{
public:
Encryption();
Encryption(Aws::Utils::Json::JsonView jsonValue);
Encryption& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The specific server-side encryption mode that you want Elastic Transcoder to
* use when decrypting your input files or encrypting your output files. Elastic
* Transcoder supports the following options:</p> <ul> <li> <p> <b>s3:</b> Amazon
* S3 creates and manages the keys used for encrypting your files.</p> </li> <li>
* <p> <b>s3-aws-kms:</b> Amazon S3 calls the Amazon Key Management Service, which
* creates and manages the keys that are used for encrypting your files. If you
* specify <code>s3-aws-kms</code> and you don't want to use the default key, you
* must add the AWS-KMS key that you want to use to your pipeline.</p> </li> <li>
* <p> <b>aes-cbc-pkcs7:</b> A padded cipher-block mode of operation originally
* used for HLS files.</p> </li> <li> <p> <b>aes-ctr:</b> AES Counter Mode.</p>
* </li> <li> <p> <b>aes-gcm:</b> AES Galois Counter Mode, a mode of operation that
* is an authenticated encryption format, meaning that a file, key, or
* initialization vector that has been tampered with fails the decryption
* process.</p> </li> </ul> <p>For all three AES options, you must provide the
* following settings, which must be base64-encoded:</p> <ul> <li> <p> <b>Key</b>
* </p> </li> <li> <p> <b>Key MD5</b> </p> </li> <li> <p> <b>Initialization
* Vector</b> </p> </li> </ul> <p>For the AES modes, your private
* encryption keys and your unencrypted data are never stored by AWS; therefore, it
* is important that you safely manage your encryption keys. If you lose them, you
* won't be able to unencrypt your data.</p>
*/
inline const Aws::String& GetMode() const{ return m_mode; }
/**
* <p>The specific server-side encryption mode that you want Elastic Transcoder to
* use when decrypting your input files or encrypting your output files. Elastic
* Transcoder supports the following options:</p> <ul> <li> <p> <b>s3:</b> Amazon
* S3 creates and manages the keys used for encrypting your files.</p> </li> <li>
* <p> <b>s3-aws-kms:</b> Amazon S3 calls the Amazon Key Management Service, which
* creates and manages the keys that are used for encrypting your files. If you
* specify <code>s3-aws-kms</code> and you don't want to use the default key, you
* must add the AWS-KMS key that you want to use to your pipeline.</p> </li> <li>
* <p> <b>aes-cbc-pkcs7:</b> A padded cipher-block mode of operation originally
* used for HLS files.</p> </li> <li> <p> <b>aes-ctr:</b> AES Counter Mode.</p>
* </li> <li> <p> <b>aes-gcm:</b> AES Galois Counter Mode, a mode of operation that
* is an authenticated encryption format, meaning that a file, key, or
* initialization vector that has been tampered with fails the decryption
* process.</p> </li> </ul> <p>For all three AES options, you must provide the
* following settings, which must be base64-encoded:</p> <ul> <li> <p> <b>Key</b>
* </p> </li> <li> <p> <b>Key MD5</b> </p> </li> <li> <p> <b>Initialization
* Vector</b> </p> </li> </ul> <p>For the AES modes, your private
* encryption keys and your unencrypted data are never stored by AWS; therefore, it
* is important that you safely manage your encryption keys. If you lose them, you
* won't be able to unencrypt your data.</p>
*/
inline bool ModeHasBeenSet() const { return m_modeHasBeenSet; }
/**
* <p>The specific server-side encryption mode that you want Elastic Transcoder to
* use when decrypting your input files or encrypting your output files. Elastic
* Transcoder supports the following options:</p> <ul> <li> <p> <b>s3:</b> Amazon
* S3 creates and manages the keys used for encrypting your files.</p> </li> <li>
* <p> <b>s3-aws-kms:</b> Amazon S3 calls the Amazon Key Management Service, which
* creates and manages the keys that are used for encrypting your files. If you
* specify <code>s3-aws-kms</code> and you don't want to use the default key, you
* must add the AWS-KMS key that you want to use to your pipeline.</p> </li> <li>
* <p> <b>aes-cbc-pkcs7:</b> A padded cipher-block mode of operation originally
* used for HLS files.</p> </li> <li> <p> <b>aes-ctr:</b> AES Counter Mode.</p>
* </li> <li> <p> <b>aes-gcm:</b> AES Galois Counter Mode, a mode of operation that
* is an authenticated encryption format, meaning that a file, key, or
* initialization vector that has been tampered with fails the decryption
* process.</p> </li> </ul> <p>For all three AES options, you must provide the
* following settings, which must be base64-encoded:</p> <ul> <li> <p> <b>Key</b>
* </p> </li> <li> <p> <b>Key MD5</b> </p> </li> <li> <p> <b>Initialization
* Vector</b> </p> </li> </ul> <p>For the AES modes, your private
* encryption keys and your unencrypted data are never stored by AWS; therefore, it
* is important that you safely manage your encryption keys. If you lose them, you
* won't be able to unencrypt your data.</p>
*/
inline void SetMode(const Aws::String& value) { m_modeHasBeenSet = true; m_mode = value; }
/**
* <p>The specific server-side encryption mode that you want Elastic Transcoder to
* use when decrypting your input files or encrypting your output files. Elastic
* Transcoder supports the following options:</p> <ul> <li> <p> <b>s3:</b> Amazon
* S3 creates and manages the keys used for encrypting your files.</p> </li> <li>
* <p> <b>s3-aws-kms:</b> Amazon S3 calls the Amazon Key Management Service, which
* creates and manages the keys that are used for encrypting your files. If you
* specify <code>s3-aws-kms</code> and you don't want to use the default key, you
* must add the AWS-KMS key that you want to use to your pipeline.</p> </li> <li>
* <p> <b>aes-cbc-pkcs7:</b> A padded cipher-block mode of operation originally
* used for HLS files.</p> </li> <li> <p> <b>aes-ctr:</b> AES Counter Mode.</p>
* </li> <li> <p> <b>aes-gcm:</b> AES Galois Counter Mode, a mode of operation that
* is an authenticated encryption format, meaning that a file, key, or
* initialization vector that has been tampered with fails the decryption
* process.</p> </li> </ul> <p>For all three AES options, you must provide the
* following settings, which must be base64-encoded:</p> <ul> <li> <p> <b>Key</b>
* </p> </li> <li> <p> <b>Key MD5</b> </p> </li> <li> <p> <b>Initialization
* Vector</b> </p> </li> </ul> <p>For the AES modes, your private
* encryption keys and your unencrypted data are never stored by AWS; therefore, it
* is important that you safely manage your encryption keys. If you lose them, you
* won't be able to unencrypt your data.</p>
*/
inline void SetMode(Aws::String&& value) { m_modeHasBeenSet = true; m_mode = std::move(value); }
/**
* <p>The specific server-side encryption mode that you want Elastic Transcoder to
* use when decrypting your input files or encrypting your output files. Elastic
* Transcoder supports the following options:</p> <ul> <li> <p> <b>s3:</b> Amazon
* S3 creates and manages the keys used for encrypting your files.</p> </li> <li>
* <p> <b>s3-aws-kms:</b> Amazon S3 calls the Amazon Key Management Service, which
* creates and manages the keys that are used for encrypting your files. If you
* specify <code>s3-aws-kms</code> and you don't want to use the default key, you
* must add the AWS-KMS key that you want to use to your pipeline.</p> </li> <li>
* <p> <b>aes-cbc-pkcs7:</b> A padded cipher-block mode of operation originally
* used for HLS files.</p> </li> <li> <p> <b>aes-ctr:</b> AES Counter Mode.</p>
* </li> <li> <p> <b>aes-gcm:</b> AES Galois Counter Mode, a mode of operation that
* is an authenticated encryption format, meaning that a file, key, or
* initialization vector that has been tampered with fails the decryption
* process.</p> </li> </ul> <p>For all three AES options, you must provide the
* following settings, which must be base64-encoded:</p> <ul> <li> <p> <b>Key</b>
* </p> </li> <li> <p> <b>Key MD5</b> </p> </li> <li> <p> <b>Initialization
* Vector</b> </p> </li> </ul> <p>For the AES modes, your private
* encryption keys and your unencrypted data are never stored by AWS; therefore, it
* is important that you safely manage your encryption keys. If you lose them, you
* won't be able to unencrypt your data.</p>
*/
inline void SetMode(const char* value) { m_modeHasBeenSet = true; m_mode.assign(value); }
/**
* <p>The specific server-side encryption mode that you want Elastic Transcoder to
* use when decrypting your input files or encrypting your output files. Elastic
* Transcoder supports the following options:</p> <ul> <li> <p> <b>s3:</b> Amazon
* S3 creates and manages the keys used for encrypting your files.</p> </li> <li>
* <p> <b>s3-aws-kms:</b> Amazon S3 calls the Amazon Key Management Service, which
* creates and manages the keys that are used for encrypting your files. If you
* specify <code>s3-aws-kms</code> and you don't want to use the default key, you
* must add the AWS-KMS key that you want to use to your pipeline.</p> </li> <li>
* <p> <b>aes-cbc-pkcs7:</b> A padded cipher-block mode of operation originally
* used for HLS files.</p> </li> <li> <p> <b>aes-ctr:</b> AES Counter Mode.</p>
* </li> <li> <p> <b>aes-gcm:</b> AES Galois Counter Mode, a mode of operation that
* is an authenticated encryption format, meaning that a file, key, or
* initialization vector that has been tampered with fails the decryption
* process.</p> </li> </ul> <p>For all three AES options, you must provide the
* following settings, which must be base64-encoded:</p> <ul> <li> <p> <b>Key</b>
* </p> </li> <li> <p> <b>Key MD5</b> </p> </li> <li> <p> <b>Initialization
* Vector</b> </p> </li> </ul> <p>For the AES modes, your private
* encryption keys and your unencrypted data are never stored by AWS; therefore, it
* is important that you safely manage your encryption keys. If you lose them, you
* won't be able to unencrypt your data.</p>
*/
inline Encryption& WithMode(const Aws::String& value) { SetMode(value); return *this;}
/**
* <p>The specific server-side encryption mode that you want Elastic Transcoder to
* use when decrypting your input files or encrypting your output files. Elastic
* Transcoder supports the following options:</p> <ul> <li> <p> <b>s3:</b> Amazon
* S3 creates and manages the keys used for encrypting your files.</p> </li> <li>
* <p> <b>s3-aws-kms:</b> Amazon S3 calls the Amazon Key Management Service, which
* creates and manages the keys that are used for encrypting your files. If you
* specify <code>s3-aws-kms</code> and you don't want to use the default key, you
* must add the AWS-KMS key that you want to use to your pipeline.</p> </li> <li>
* <p> <b>aes-cbc-pkcs7:</b> A padded cipher-block mode of operation originally
* used for HLS files.</p> </li> <li> <p> <b>aes-ctr:</b> AES Counter Mode.</p>
* </li> <li> <p> <b>aes-gcm:</b> AES Galois Counter Mode, a mode of operation that
* is an authenticated encryption format, meaning that a file, key, or
* initialization vector that has been tampered with fails the decryption
* process.</p> </li> </ul> <p>For all three AES options, you must provide the
* following settings, which must be base64-encoded:</p> <ul> <li> <p> <b>Key</b>
* </p> </li> <li> <p> <b>Key MD5</b> </p> </li> <li> <p> <b>Initialization
* Vector</b> </p> </li> </ul> <p>For the AES modes, your private
* encryption keys and your unencrypted data are never stored by AWS; therefore, it
* is important that you safely manage your encryption keys. If you lose them, you
* won't be able to unencrypt your data.</p>
*/
inline Encryption& WithMode(Aws::String&& value) { SetMode(std::move(value)); return *this;}
/**
* <p>The specific server-side encryption mode that you want Elastic Transcoder to
* use when decrypting your input files or encrypting your output files. Elastic
* Transcoder supports the following options:</p> <ul> <li> <p> <b>s3:</b> Amazon
* S3 creates and manages the keys used for encrypting your files.</p> </li> <li>
* <p> <b>s3-aws-kms:</b> Amazon S3 calls the Amazon Key Management Service, which
* creates and manages the keys that are used for encrypting your files. If you
* specify <code>s3-aws-kms</code> and you don't want to use the default key, you
* must add the AWS-KMS key that you want to use to your pipeline.</p> </li> <li>
* <p> <b>aes-cbc-pkcs7:</b> A padded cipher-block mode of operation originally
* used for HLS files.</p> </li> <li> <p> <b>aes-ctr:</b> AES Counter Mode.</p>
* </li> <li> <p> <b>aes-gcm:</b> AES Galois Counter Mode, a mode of operation that
* is an authenticated encryption format, meaning that a file, key, or
* initialization vector that has been tampered with fails the decryption
* process.</p> </li> </ul> <p>For all three AES options, you must provide the
* following settings, which must be base64-encoded:</p> <ul> <li> <p> <b>Key</b>
* </p> </li> <li> <p> <b>Key MD5</b> </p> </li> <li> <p> <b>Initialization
* Vector</b> </p> </li> </ul> <p>For the AES modes, your private
* encryption keys and your unencrypted data are never stored by AWS; therefore, it
* is important that you safely manage your encryption keys. If you lose them, you
* won't be able to unencrypt your data.</p>
*/
inline Encryption& WithMode(const char* value) { SetMode(value); return *this;}
/**
* <p>The data encryption key that you want Elastic Transcoder to use to encrypt
* your output file, or that was used to encrypt your input file. The key must be
* base64-encoded and it must be one of the following bit lengths before being
* base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or <code>256</code>.
* </p> <p>The key must also be encrypted by using the Amazon Key Management
* Service.</p>
*/
inline const Aws::String& GetKey() const{ return m_key; }
/**
* <p>The data encryption key that you want Elastic Transcoder to use to encrypt
* your output file, or that was used to encrypt your input file. The key must be
* base64-encoded and it must be one of the following bit lengths before being
* base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or <code>256</code>.
* </p> <p>The key must also be encrypted by using the Amazon Key Management
* Service.</p>
*/
inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
/**
* <p>The data encryption key that you want Elastic Transcoder to use to encrypt
* your output file, or that was used to encrypt your input file. The key must be
* base64-encoded and it must be one of the following bit lengths before being
* base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or <code>256</code>.
* </p> <p>The key must also be encrypted by using the Amazon Key Management
* Service.</p>
*/
inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; }
/**
* <p>The data encryption key that you want Elastic Transcoder to use to encrypt
* your output file, or that was used to encrypt your input file. The key must be
* base64-encoded and it must be one of the following bit lengths before being
* base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or <code>256</code>.
* </p> <p>The key must also be encrypted by using the Amazon Key Management
* Service.</p>
*/
inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); }
/**
* <p>The data encryption key that you want Elastic Transcoder to use to encrypt
* your output file, or that was used to encrypt your input file. The key must be
* base64-encoded and it must be one of the following bit lengths before being
* base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or <code>256</code>.
* </p> <p>The key must also be encrypted by using the Amazon Key Management
* Service.</p>
*/
inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); }
/**
* <p>The data encryption key that you want Elastic Transcoder to use to encrypt
* your output file, or that was used to encrypt your input file. The key must be
* base64-encoded and it must be one of the following bit lengths before being
* base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or <code>256</code>.
* </p> <p>The key must also be encrypted by using the Amazon Key Management
* Service.</p>
*/
inline Encryption& WithKey(const Aws::String& value) { SetKey(value); return *this;}
/**
* <p>The data encryption key that you want Elastic Transcoder to use to encrypt
* your output file, or that was used to encrypt your input file. The key must be
* base64-encoded and it must be one of the following bit lengths before being
* base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or <code>256</code>.
* </p> <p>The key must also be encrypted by using the Amazon Key Management
* Service.</p>
*/
inline Encryption& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;}
/**
* <p>The data encryption key that you want Elastic Transcoder to use to encrypt
* your output file, or that was used to encrypt your input file. The key must be
* base64-encoded and it must be one of the following bit lengths before being
* base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or <code>256</code>.
* </p> <p>The key must also be encrypted by using the Amazon Key Management
* Service.</p>
*/
inline Encryption& WithKey(const char* value) { SetKey(value); return *this;}
/**
* <p>The MD5 digest of the key that you used to encrypt your input file, or that
* you want Elastic Transcoder to use to encrypt your output file. Elastic
* Transcoder uses the key digest as a checksum to make sure your key was not
* corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly
* 16 bytes long before being base64-encoded.</p>
*/
inline const Aws::String& GetKeyMd5() const{ return m_keyMd5; }
/**
* <p>The MD5 digest of the key that you used to encrypt your input file, or that
* you want Elastic Transcoder to use to encrypt your output file. Elastic
* Transcoder uses the key digest as a checksum to make sure your key was not
* corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly
* 16 bytes long before being base64-encoded.</p>
*/
inline bool KeyMd5HasBeenSet() const { return m_keyMd5HasBeenSet; }
/**
* <p>The MD5 digest of the key that you used to encrypt your input file, or that
* you want Elastic Transcoder to use to encrypt your output file. Elastic
* Transcoder uses the key digest as a checksum to make sure your key was not
* corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly
* 16 bytes long before being base64-encoded.</p>
*/
inline void SetKeyMd5(const Aws::String& value) { m_keyMd5HasBeenSet = true; m_keyMd5 = value; }
/**
* <p>The MD5 digest of the key that you used to encrypt your input file, or that
* you want Elastic Transcoder to use to encrypt your output file. Elastic
* Transcoder uses the key digest as a checksum to make sure your key was not
* corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly
* 16 bytes long before being base64-encoded.</p>
*/
inline void SetKeyMd5(Aws::String&& value) { m_keyMd5HasBeenSet = true; m_keyMd5 = std::move(value); }
/**
* <p>The MD5 digest of the key that you used to encrypt your input file, or that
* you want Elastic Transcoder to use to encrypt your output file. Elastic
* Transcoder uses the key digest as a checksum to make sure your key was not
* corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly
* 16 bytes long before being base64-encoded.</p>
*/
inline void SetKeyMd5(const char* value) { m_keyMd5HasBeenSet = true; m_keyMd5.assign(value); }
/**
* <p>The MD5 digest of the key that you used to encrypt your input file, or that
* you want Elastic Transcoder to use to encrypt your output file. Elastic
* Transcoder uses the key digest as a checksum to make sure your key was not
* corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly
* 16 bytes long before being base64-encoded.</p>
*/
inline Encryption& WithKeyMd5(const Aws::String& value) { SetKeyMd5(value); return *this;}
/**
* <p>The MD5 digest of the key that you used to encrypt your input file, or that
* you want Elastic Transcoder to use to encrypt your output file. Elastic
* Transcoder uses the key digest as a checksum to make sure your key was not
* corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly
* 16 bytes long before being base64-encoded.</p>
*/
inline Encryption& WithKeyMd5(Aws::String&& value) { SetKeyMd5(std::move(value)); return *this;}
/**
* <p>The MD5 digest of the key that you used to encrypt your input file, or that
* you want Elastic Transcoder to use to encrypt your output file. Elastic
* Transcoder uses the key digest as a checksum to make sure your key was not
* corrupted in transit. The key MD5 must be base64-encoded, and it must be exactly
* 16 bytes long before being base64-encoded.</p>
*/
inline Encryption& WithKeyMd5(const char* value) { SetKeyMd5(value); return *this;}
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you used to encrypt your input files or that you want
* Elastic Transcoder to use to encrypt your output files. The initialization
* vector must be base64-encoded, and it must be exactly 16 bytes long before being
* base64-encoded.</p>
*/
inline const Aws::String& GetInitializationVector() const{ return m_initializationVector; }
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you used to encrypt your input files or that you want
* Elastic Transcoder to use to encrypt your output files. The initialization
* vector must be base64-encoded, and it must be exactly 16 bytes long before being
* base64-encoded.</p>
*/
inline bool InitializationVectorHasBeenSet() const { return m_initializationVectorHasBeenSet; }
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you used to encrypt your input files or that you want
* Elastic Transcoder to use to encrypt your output files. The initialization
* vector must be base64-encoded, and it must be exactly 16 bytes long before being
* base64-encoded.</p>
*/
inline void SetInitializationVector(const Aws::String& value) { m_initializationVectorHasBeenSet = true; m_initializationVector = value; }
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you used to encrypt your input files or that you want
* Elastic Transcoder to use to encrypt your output files. The initialization
* vector must be base64-encoded, and it must be exactly 16 bytes long before being
* base64-encoded.</p>
*/
inline void SetInitializationVector(Aws::String&& value) { m_initializationVectorHasBeenSet = true; m_initializationVector = std::move(value); }
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you used to encrypt your input files or that you want
* Elastic Transcoder to use to encrypt your output files. The initialization
* vector must be base64-encoded, and it must be exactly 16 bytes long before being
* base64-encoded.</p>
*/
inline void SetInitializationVector(const char* value) { m_initializationVectorHasBeenSet = true; m_initializationVector.assign(value); }
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you used to encrypt your input files or that you want
* Elastic Transcoder to use to encrypt your output files. The initialization
* vector must be base64-encoded, and it must be exactly 16 bytes long before being
* base64-encoded.</p>
*/
inline Encryption& WithInitializationVector(const Aws::String& value) { SetInitializationVector(value); return *this;}
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you used to encrypt your input files or that you want
* Elastic Transcoder to use to encrypt your output files. The initialization
* vector must be base64-encoded, and it must be exactly 16 bytes long before being
* base64-encoded.</p>
*/
inline Encryption& WithInitializationVector(Aws::String&& value) { SetInitializationVector(std::move(value)); return *this;}
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you used to encrypt your input files or that you want
* Elastic Transcoder to use to encrypt your output files. The initialization
* vector must be base64-encoded, and it must be exactly 16 bytes long before being
* base64-encoded.</p>
*/
inline Encryption& WithInitializationVector(const char* value) { SetInitializationVector(value); return *this;}
private:
Aws::String m_mode;
bool m_modeHasBeenSet;
Aws::String m_key;
bool m_keyHasBeenSet;
Aws::String m_keyMd5;
bool m_keyMd5HasBeenSet;
Aws::String m_initializationVector;
bool m_initializationVectorHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,469 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The HLS content protection settings, if any, that you want Elastic Transcoder
* to apply to your output files.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/HlsContentProtection">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API HlsContentProtection
{
public:
HlsContentProtection();
HlsContentProtection(Aws::Utils::Json::JsonView jsonValue);
HlsContentProtection& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The content protection method for your output. The only valid value is:
* <code>aes-128</code>.</p> <p>This value is written into the method attribute of
* the <code>EXT-X-KEY</code> metadata tag in the output playlist.</p>
*/
inline const Aws::String& GetMethod() const{ return m_method; }
/**
* <p>The content protection method for your output. The only valid value is:
* <code>aes-128</code>.</p> <p>This value is written into the method attribute of
* the <code>EXT-X-KEY</code> metadata tag in the output playlist.</p>
*/
inline bool MethodHasBeenSet() const { return m_methodHasBeenSet; }
/**
* <p>The content protection method for your output. The only valid value is:
* <code>aes-128</code>.</p> <p>This value is written into the method attribute of
* the <code>EXT-X-KEY</code> metadata tag in the output playlist.</p>
*/
inline void SetMethod(const Aws::String& value) { m_methodHasBeenSet = true; m_method = value; }
/**
* <p>The content protection method for your output. The only valid value is:
* <code>aes-128</code>.</p> <p>This value is written into the method attribute of
* the <code>EXT-X-KEY</code> metadata tag in the output playlist.</p>
*/
inline void SetMethod(Aws::String&& value) { m_methodHasBeenSet = true; m_method = std::move(value); }
/**
* <p>The content protection method for your output. The only valid value is:
* <code>aes-128</code>.</p> <p>This value is written into the method attribute of
* the <code>EXT-X-KEY</code> metadata tag in the output playlist.</p>
*/
inline void SetMethod(const char* value) { m_methodHasBeenSet = true; m_method.assign(value); }
/**
* <p>The content protection method for your output. The only valid value is:
* <code>aes-128</code>.</p> <p>This value is written into the method attribute of
* the <code>EXT-X-KEY</code> metadata tag in the output playlist.</p>
*/
inline HlsContentProtection& WithMethod(const Aws::String& value) { SetMethod(value); return *this;}
/**
* <p>The content protection method for your output. The only valid value is:
* <code>aes-128</code>.</p> <p>This value is written into the method attribute of
* the <code>EXT-X-KEY</code> metadata tag in the output playlist.</p>
*/
inline HlsContentProtection& WithMethod(Aws::String&& value) { SetMethod(std::move(value)); return *this;}
/**
* <p>The content protection method for your output. The only valid value is:
* <code>aes-128</code>.</p> <p>This value is written into the method attribute of
* the <code>EXT-X-KEY</code> metadata tag in the output playlist.</p>
*/
inline HlsContentProtection& WithMethod(const char* value) { SetMethod(value); return *this;}
/**
* <p>If you want Elastic Transcoder to generate a key for you, leave this field
* blank.</p> <p>If you choose to supply your own key, you must encrypt the key by
* using AWS KMS. The key must be base64-encoded, and it must be one of the
* following bit lengths before being base64-encoded:</p> <p> <code>128</code>,
* <code>192</code>, or <code>256</code>. </p>
*/
inline const Aws::String& GetKey() const{ return m_key; }
/**
* <p>If you want Elastic Transcoder to generate a key for you, leave this field
* blank.</p> <p>If you choose to supply your own key, you must encrypt the key by
* using AWS KMS. The key must be base64-encoded, and it must be one of the
* following bit lengths before being base64-encoded:</p> <p> <code>128</code>,
* <code>192</code>, or <code>256</code>. </p>
*/
inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
/**
* <p>If you want Elastic Transcoder to generate a key for you, leave this field
* blank.</p> <p>If you choose to supply your own key, you must encrypt the key by
* using AWS KMS. The key must be base64-encoded, and it must be one of the
* following bit lengths before being base64-encoded:</p> <p> <code>128</code>,
* <code>192</code>, or <code>256</code>. </p>
*/
inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; }
/**
* <p>If you want Elastic Transcoder to generate a key for you, leave this field
* blank.</p> <p>If you choose to supply your own key, you must encrypt the key by
* using AWS KMS. The key must be base64-encoded, and it must be one of the
* following bit lengths before being base64-encoded:</p> <p> <code>128</code>,
* <code>192</code>, or <code>256</code>. </p>
*/
inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); }
/**
* <p>If you want Elastic Transcoder to generate a key for you, leave this field
* blank.</p> <p>If you choose to supply your own key, you must encrypt the key by
* using AWS KMS. The key must be base64-encoded, and it must be one of the
* following bit lengths before being base64-encoded:</p> <p> <code>128</code>,
* <code>192</code>, or <code>256</code>. </p>
*/
inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); }
/**
* <p>If you want Elastic Transcoder to generate a key for you, leave this field
* blank.</p> <p>If you choose to supply your own key, you must encrypt the key by
* using AWS KMS. The key must be base64-encoded, and it must be one of the
* following bit lengths before being base64-encoded:</p> <p> <code>128</code>,
* <code>192</code>, or <code>256</code>. </p>
*/
inline HlsContentProtection& WithKey(const Aws::String& value) { SetKey(value); return *this;}
/**
* <p>If you want Elastic Transcoder to generate a key for you, leave this field
* blank.</p> <p>If you choose to supply your own key, you must encrypt the key by
* using AWS KMS. The key must be base64-encoded, and it must be one of the
* following bit lengths before being base64-encoded:</p> <p> <code>128</code>,
* <code>192</code>, or <code>256</code>. </p>
*/
inline HlsContentProtection& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;}
/**
* <p>If you want Elastic Transcoder to generate a key for you, leave this field
* blank.</p> <p>If you choose to supply your own key, you must encrypt the key by
* using AWS KMS. The key must be base64-encoded, and it must be one of the
* following bit lengths before being base64-encoded:</p> <p> <code>128</code>,
* <code>192</code>, or <code>256</code>. </p>
*/
inline HlsContentProtection& WithKey(const char* value) { SetKey(value); return *this;}
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The MD5 digest of the key that you want Elastic Transcoder
* to use to encrypt your output file, and that you want Elastic Transcoder to use
* as a checksum to make sure your key was not corrupted in transit. The key MD5
* must be base64-encoded, and it must be exactly 16 bytes before being base64-
* encoded.</p>
*/
inline const Aws::String& GetKeyMd5() const{ return m_keyMd5; }
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The MD5 digest of the key that you want Elastic Transcoder
* to use to encrypt your output file, and that you want Elastic Transcoder to use
* as a checksum to make sure your key was not corrupted in transit. The key MD5
* must be base64-encoded, and it must be exactly 16 bytes before being base64-
* encoded.</p>
*/
inline bool KeyMd5HasBeenSet() const { return m_keyMd5HasBeenSet; }
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The MD5 digest of the key that you want Elastic Transcoder
* to use to encrypt your output file, and that you want Elastic Transcoder to use
* as a checksum to make sure your key was not corrupted in transit. The key MD5
* must be base64-encoded, and it must be exactly 16 bytes before being base64-
* encoded.</p>
*/
inline void SetKeyMd5(const Aws::String& value) { m_keyMd5HasBeenSet = true; m_keyMd5 = value; }
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The MD5 digest of the key that you want Elastic Transcoder
* to use to encrypt your output file, and that you want Elastic Transcoder to use
* as a checksum to make sure your key was not corrupted in transit. The key MD5
* must be base64-encoded, and it must be exactly 16 bytes before being base64-
* encoded.</p>
*/
inline void SetKeyMd5(Aws::String&& value) { m_keyMd5HasBeenSet = true; m_keyMd5 = std::move(value); }
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The MD5 digest of the key that you want Elastic Transcoder
* to use to encrypt your output file, and that you want Elastic Transcoder to use
* as a checksum to make sure your key was not corrupted in transit. The key MD5
* must be base64-encoded, and it must be exactly 16 bytes before being base64-
* encoded.</p>
*/
inline void SetKeyMd5(const char* value) { m_keyMd5HasBeenSet = true; m_keyMd5.assign(value); }
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The MD5 digest of the key that you want Elastic Transcoder
* to use to encrypt your output file, and that you want Elastic Transcoder to use
* as a checksum to make sure your key was not corrupted in transit. The key MD5
* must be base64-encoded, and it must be exactly 16 bytes before being base64-
* encoded.</p>
*/
inline HlsContentProtection& WithKeyMd5(const Aws::String& value) { SetKeyMd5(value); return *this;}
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The MD5 digest of the key that you want Elastic Transcoder
* to use to encrypt your output file, and that you want Elastic Transcoder to use
* as a checksum to make sure your key was not corrupted in transit. The key MD5
* must be base64-encoded, and it must be exactly 16 bytes before being base64-
* encoded.</p>
*/
inline HlsContentProtection& WithKeyMd5(Aws::String&& value) { SetKeyMd5(std::move(value)); return *this;}
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The MD5 digest of the key that you want Elastic Transcoder
* to use to encrypt your output file, and that you want Elastic Transcoder to use
* as a checksum to make sure your key was not corrupted in transit. The key MD5
* must be base64-encoded, and it must be exactly 16 bytes before being base64-
* encoded.</p>
*/
inline HlsContentProtection& WithKeyMd5(const char* value) { SetKeyMd5(value); return *this;}
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The series of random bits created by a random bit generator,
* unique for every encryption operation, that you want Elastic Transcoder to use
* to encrypt your output files. The initialization vector must be base64-encoded,
* and it must be exactly 16 bytes before being base64-encoded.</p>
*/
inline const Aws::String& GetInitializationVector() const{ return m_initializationVector; }
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The series of random bits created by a random bit generator,
* unique for every encryption operation, that you want Elastic Transcoder to use
* to encrypt your output files. The initialization vector must be base64-encoded,
* and it must be exactly 16 bytes before being base64-encoded.</p>
*/
inline bool InitializationVectorHasBeenSet() const { return m_initializationVectorHasBeenSet; }
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The series of random bits created by a random bit generator,
* unique for every encryption operation, that you want Elastic Transcoder to use
* to encrypt your output files. The initialization vector must be base64-encoded,
* and it must be exactly 16 bytes before being base64-encoded.</p>
*/
inline void SetInitializationVector(const Aws::String& value) { m_initializationVectorHasBeenSet = true; m_initializationVector = value; }
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The series of random bits created by a random bit generator,
* unique for every encryption operation, that you want Elastic Transcoder to use
* to encrypt your output files. The initialization vector must be base64-encoded,
* and it must be exactly 16 bytes before being base64-encoded.</p>
*/
inline void SetInitializationVector(Aws::String&& value) { m_initializationVectorHasBeenSet = true; m_initializationVector = std::move(value); }
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The series of random bits created by a random bit generator,
* unique for every encryption operation, that you want Elastic Transcoder to use
* to encrypt your output files. The initialization vector must be base64-encoded,
* and it must be exactly 16 bytes before being base64-encoded.</p>
*/
inline void SetInitializationVector(const char* value) { m_initializationVectorHasBeenSet = true; m_initializationVector.assign(value); }
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The series of random bits created by a random bit generator,
* unique for every encryption operation, that you want Elastic Transcoder to use
* to encrypt your output files. The initialization vector must be base64-encoded,
* and it must be exactly 16 bytes before being base64-encoded.</p>
*/
inline HlsContentProtection& WithInitializationVector(const Aws::String& value) { SetInitializationVector(value); return *this;}
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The series of random bits created by a random bit generator,
* unique for every encryption operation, that you want Elastic Transcoder to use
* to encrypt your output files. The initialization vector must be base64-encoded,
* and it must be exactly 16 bytes before being base64-encoded.</p>
*/
inline HlsContentProtection& WithInitializationVector(Aws::String&& value) { SetInitializationVector(std::move(value)); return *this;}
/**
* <p>If Elastic Transcoder is generating your key for you, you must leave this
* field blank.</p> <p>The series of random bits created by a random bit generator,
* unique for every encryption operation, that you want Elastic Transcoder to use
* to encrypt your output files. The initialization vector must be base64-encoded,
* and it must be exactly 16 bytes before being base64-encoded.</p>
*/
inline HlsContentProtection& WithInitializationVector(const char* value) { SetInitializationVector(value); return *this;}
/**
* <p>The location of the license key required to decrypt your HLS playlist. The
* URL must be an absolute path, and is referenced in the URI attribute of the
* EXT-X-KEY metadata tag in the playlist file.</p>
*/
inline const Aws::String& GetLicenseAcquisitionUrl() const{ return m_licenseAcquisitionUrl; }
/**
* <p>The location of the license key required to decrypt your HLS playlist. The
* URL must be an absolute path, and is referenced in the URI attribute of the
* EXT-X-KEY metadata tag in the playlist file.</p>
*/
inline bool LicenseAcquisitionUrlHasBeenSet() const { return m_licenseAcquisitionUrlHasBeenSet; }
/**
* <p>The location of the license key required to decrypt your HLS playlist. The
* URL must be an absolute path, and is referenced in the URI attribute of the
* EXT-X-KEY metadata tag in the playlist file.</p>
*/
inline void SetLicenseAcquisitionUrl(const Aws::String& value) { m_licenseAcquisitionUrlHasBeenSet = true; m_licenseAcquisitionUrl = value; }
/**
* <p>The location of the license key required to decrypt your HLS playlist. The
* URL must be an absolute path, and is referenced in the URI attribute of the
* EXT-X-KEY metadata tag in the playlist file.</p>
*/
inline void SetLicenseAcquisitionUrl(Aws::String&& value) { m_licenseAcquisitionUrlHasBeenSet = true; m_licenseAcquisitionUrl = std::move(value); }
/**
* <p>The location of the license key required to decrypt your HLS playlist. The
* URL must be an absolute path, and is referenced in the URI attribute of the
* EXT-X-KEY metadata tag in the playlist file.</p>
*/
inline void SetLicenseAcquisitionUrl(const char* value) { m_licenseAcquisitionUrlHasBeenSet = true; m_licenseAcquisitionUrl.assign(value); }
/**
* <p>The location of the license key required to decrypt your HLS playlist. The
* URL must be an absolute path, and is referenced in the URI attribute of the
* EXT-X-KEY metadata tag in the playlist file.</p>
*/
inline HlsContentProtection& WithLicenseAcquisitionUrl(const Aws::String& value) { SetLicenseAcquisitionUrl(value); return *this;}
/**
* <p>The location of the license key required to decrypt your HLS playlist. The
* URL must be an absolute path, and is referenced in the URI attribute of the
* EXT-X-KEY metadata tag in the playlist file.</p>
*/
inline HlsContentProtection& WithLicenseAcquisitionUrl(Aws::String&& value) { SetLicenseAcquisitionUrl(std::move(value)); return *this;}
/**
* <p>The location of the license key required to decrypt your HLS playlist. The
* URL must be an absolute path, and is referenced in the URI attribute of the
* EXT-X-KEY metadata tag in the playlist file.</p>
*/
inline HlsContentProtection& WithLicenseAcquisitionUrl(const char* value) { SetLicenseAcquisitionUrl(value); return *this;}
/**
* <p>Specify whether you want Elastic Transcoder to write your HLS license key to
* an Amazon S3 bucket. If you choose <code>WithVariantPlaylists</code>,
* <code>LicenseAcquisitionUrl</code> must be left blank and Elastic Transcoder
* writes your data key into the same bucket as the associated playlist.</p>
*/
inline const Aws::String& GetKeyStoragePolicy() const{ return m_keyStoragePolicy; }
/**
* <p>Specify whether you want Elastic Transcoder to write your HLS license key to
* an Amazon S3 bucket. If you choose <code>WithVariantPlaylists</code>,
* <code>LicenseAcquisitionUrl</code> must be left blank and Elastic Transcoder
* writes your data key into the same bucket as the associated playlist.</p>
*/
inline bool KeyStoragePolicyHasBeenSet() const { return m_keyStoragePolicyHasBeenSet; }
/**
* <p>Specify whether you want Elastic Transcoder to write your HLS license key to
* an Amazon S3 bucket. If you choose <code>WithVariantPlaylists</code>,
* <code>LicenseAcquisitionUrl</code> must be left blank and Elastic Transcoder
* writes your data key into the same bucket as the associated playlist.</p>
*/
inline void SetKeyStoragePolicy(const Aws::String& value) { m_keyStoragePolicyHasBeenSet = true; m_keyStoragePolicy = value; }
/**
* <p>Specify whether you want Elastic Transcoder to write your HLS license key to
* an Amazon S3 bucket. If you choose <code>WithVariantPlaylists</code>,
* <code>LicenseAcquisitionUrl</code> must be left blank and Elastic Transcoder
* writes your data key into the same bucket as the associated playlist.</p>
*/
inline void SetKeyStoragePolicy(Aws::String&& value) { m_keyStoragePolicyHasBeenSet = true; m_keyStoragePolicy = std::move(value); }
/**
* <p>Specify whether you want Elastic Transcoder to write your HLS license key to
* an Amazon S3 bucket. If you choose <code>WithVariantPlaylists</code>,
* <code>LicenseAcquisitionUrl</code> must be left blank and Elastic Transcoder
* writes your data key into the same bucket as the associated playlist.</p>
*/
inline void SetKeyStoragePolicy(const char* value) { m_keyStoragePolicyHasBeenSet = true; m_keyStoragePolicy.assign(value); }
/**
* <p>Specify whether you want Elastic Transcoder to write your HLS license key to
* an Amazon S3 bucket. If you choose <code>WithVariantPlaylists</code>,
* <code>LicenseAcquisitionUrl</code> must be left blank and Elastic Transcoder
* writes your data key into the same bucket as the associated playlist.</p>
*/
inline HlsContentProtection& WithKeyStoragePolicy(const Aws::String& value) { SetKeyStoragePolicy(value); return *this;}
/**
* <p>Specify whether you want Elastic Transcoder to write your HLS license key to
* an Amazon S3 bucket. If you choose <code>WithVariantPlaylists</code>,
* <code>LicenseAcquisitionUrl</code> must be left blank and Elastic Transcoder
* writes your data key into the same bucket as the associated playlist.</p>
*/
inline HlsContentProtection& WithKeyStoragePolicy(Aws::String&& value) { SetKeyStoragePolicy(std::move(value)); return *this;}
/**
* <p>Specify whether you want Elastic Transcoder to write your HLS license key to
* an Amazon S3 bucket. If you choose <code>WithVariantPlaylists</code>,
* <code>LicenseAcquisitionUrl</code> must be left blank and Elastic Transcoder
* writes your data key into the same bucket as the associated playlist.</p>
*/
inline HlsContentProtection& WithKeyStoragePolicy(const char* value) { SetKeyStoragePolicy(value); return *this;}
private:
Aws::String m_method;
bool m_methodHasBeenSet;
Aws::String m_key;
bool m_keyHasBeenSet;
Aws::String m_keyMd5;
bool m_keyMd5HasBeenSet;
Aws::String m_initializationVector;
bool m_initializationVectorHasBeenSet;
Aws::String m_licenseAcquisitionUrl;
bool m_licenseAcquisitionUrlHasBeenSet;
Aws::String m_keyStoragePolicy;
bool m_keyStoragePolicyHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,254 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/elastictranscoder/model/CaptionSource.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The captions to be created, if any.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/InputCaptions">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API InputCaptions
{
public:
InputCaptions();
InputCaptions(Aws::Utils::Json::JsonView jsonValue);
InputCaptions& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple captions.</p> <ul> <li> <p> <b>MergeOverride:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the sidecar captions and ignores the embedded captions
* for that language.</p> </li> <li> <p> <b>MergeRetain:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the embedded captions and ignores the sidecar captions
* for that language. If <code>CaptionSources</code> is empty, Elastic Transcoder
* omits all sidecar captions from the output files.</p> </li> <li> <p>
* <b>Override:</b> Elastic Transcoder transcodes only the sidecar captions that
* you specify in <code>CaptionSources</code>.</p> </li> </ul> <p>
* <code>MergePolicy</code> cannot be null.</p>
*/
inline const Aws::String& GetMergePolicy() const{ return m_mergePolicy; }
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple captions.</p> <ul> <li> <p> <b>MergeOverride:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the sidecar captions and ignores the embedded captions
* for that language.</p> </li> <li> <p> <b>MergeRetain:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the embedded captions and ignores the sidecar captions
* for that language. If <code>CaptionSources</code> is empty, Elastic Transcoder
* omits all sidecar captions from the output files.</p> </li> <li> <p>
* <b>Override:</b> Elastic Transcoder transcodes only the sidecar captions that
* you specify in <code>CaptionSources</code>.</p> </li> </ul> <p>
* <code>MergePolicy</code> cannot be null.</p>
*/
inline bool MergePolicyHasBeenSet() const { return m_mergePolicyHasBeenSet; }
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple captions.</p> <ul> <li> <p> <b>MergeOverride:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the sidecar captions and ignores the embedded captions
* for that language.</p> </li> <li> <p> <b>MergeRetain:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the embedded captions and ignores the sidecar captions
* for that language. If <code>CaptionSources</code> is empty, Elastic Transcoder
* omits all sidecar captions from the output files.</p> </li> <li> <p>
* <b>Override:</b> Elastic Transcoder transcodes only the sidecar captions that
* you specify in <code>CaptionSources</code>.</p> </li> </ul> <p>
* <code>MergePolicy</code> cannot be null.</p>
*/
inline void SetMergePolicy(const Aws::String& value) { m_mergePolicyHasBeenSet = true; m_mergePolicy = value; }
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple captions.</p> <ul> <li> <p> <b>MergeOverride:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the sidecar captions and ignores the embedded captions
* for that language.</p> </li> <li> <p> <b>MergeRetain:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the embedded captions and ignores the sidecar captions
* for that language. If <code>CaptionSources</code> is empty, Elastic Transcoder
* omits all sidecar captions from the output files.</p> </li> <li> <p>
* <b>Override:</b> Elastic Transcoder transcodes only the sidecar captions that
* you specify in <code>CaptionSources</code>.</p> </li> </ul> <p>
* <code>MergePolicy</code> cannot be null.</p>
*/
inline void SetMergePolicy(Aws::String&& value) { m_mergePolicyHasBeenSet = true; m_mergePolicy = std::move(value); }
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple captions.</p> <ul> <li> <p> <b>MergeOverride:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the sidecar captions and ignores the embedded captions
* for that language.</p> </li> <li> <p> <b>MergeRetain:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the embedded captions and ignores the sidecar captions
* for that language. If <code>CaptionSources</code> is empty, Elastic Transcoder
* omits all sidecar captions from the output files.</p> </li> <li> <p>
* <b>Override:</b> Elastic Transcoder transcodes only the sidecar captions that
* you specify in <code>CaptionSources</code>.</p> </li> </ul> <p>
* <code>MergePolicy</code> cannot be null.</p>
*/
inline void SetMergePolicy(const char* value) { m_mergePolicyHasBeenSet = true; m_mergePolicy.assign(value); }
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple captions.</p> <ul> <li> <p> <b>MergeOverride:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the sidecar captions and ignores the embedded captions
* for that language.</p> </li> <li> <p> <b>MergeRetain:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the embedded captions and ignores the sidecar captions
* for that language. If <code>CaptionSources</code> is empty, Elastic Transcoder
* omits all sidecar captions from the output files.</p> </li> <li> <p>
* <b>Override:</b> Elastic Transcoder transcodes only the sidecar captions that
* you specify in <code>CaptionSources</code>.</p> </li> </ul> <p>
* <code>MergePolicy</code> cannot be null.</p>
*/
inline InputCaptions& WithMergePolicy(const Aws::String& value) { SetMergePolicy(value); return *this;}
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple captions.</p> <ul> <li> <p> <b>MergeOverride:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the sidecar captions and ignores the embedded captions
* for that language.</p> </li> <li> <p> <b>MergeRetain:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the embedded captions and ignores the sidecar captions
* for that language. If <code>CaptionSources</code> is empty, Elastic Transcoder
* omits all sidecar captions from the output files.</p> </li> <li> <p>
* <b>Override:</b> Elastic Transcoder transcodes only the sidecar captions that
* you specify in <code>CaptionSources</code>.</p> </li> </ul> <p>
* <code>MergePolicy</code> cannot be null.</p>
*/
inline InputCaptions& WithMergePolicy(Aws::String&& value) { SetMergePolicy(std::move(value)); return *this;}
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple captions.</p> <ul> <li> <p> <b>MergeOverride:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the sidecar captions and ignores the embedded captions
* for that language.</p> </li> <li> <p> <b>MergeRetain:</b> Elastic Transcoder
* transcodes both embedded and sidecar captions into outputs. If captions for a
* language are embedded in the input file and also appear in a sidecar file,
* Elastic Transcoder uses the embedded captions and ignores the sidecar captions
* for that language. If <code>CaptionSources</code> is empty, Elastic Transcoder
* omits all sidecar captions from the output files.</p> </li> <li> <p>
* <b>Override:</b> Elastic Transcoder transcodes only the sidecar captions that
* you specify in <code>CaptionSources</code>.</p> </li> </ul> <p>
* <code>MergePolicy</code> cannot be null.</p>
*/
inline InputCaptions& WithMergePolicy(const char* value) { SetMergePolicy(value); return *this;}
/**
* <p>Source files for the input sidecar captions used during the transcoding
* process. To omit all sidecar captions, leave <code>CaptionSources</code>
* blank.</p>
*/
inline const Aws::Vector<CaptionSource>& GetCaptionSources() const{ return m_captionSources; }
/**
* <p>Source files for the input sidecar captions used during the transcoding
* process. To omit all sidecar captions, leave <code>CaptionSources</code>
* blank.</p>
*/
inline bool CaptionSourcesHasBeenSet() const { return m_captionSourcesHasBeenSet; }
/**
* <p>Source files for the input sidecar captions used during the transcoding
* process. To omit all sidecar captions, leave <code>CaptionSources</code>
* blank.</p>
*/
inline void SetCaptionSources(const Aws::Vector<CaptionSource>& value) { m_captionSourcesHasBeenSet = true; m_captionSources = value; }
/**
* <p>Source files for the input sidecar captions used during the transcoding
* process. To omit all sidecar captions, leave <code>CaptionSources</code>
* blank.</p>
*/
inline void SetCaptionSources(Aws::Vector<CaptionSource>&& value) { m_captionSourcesHasBeenSet = true; m_captionSources = std::move(value); }
/**
* <p>Source files for the input sidecar captions used during the transcoding
* process. To omit all sidecar captions, leave <code>CaptionSources</code>
* blank.</p>
*/
inline InputCaptions& WithCaptionSources(const Aws::Vector<CaptionSource>& value) { SetCaptionSources(value); return *this;}
/**
* <p>Source files for the input sidecar captions used during the transcoding
* process. To omit all sidecar captions, leave <code>CaptionSources</code>
* blank.</p>
*/
inline InputCaptions& WithCaptionSources(Aws::Vector<CaptionSource>&& value) { SetCaptionSources(std::move(value)); return *this;}
/**
* <p>Source files for the input sidecar captions used during the transcoding
* process. To omit all sidecar captions, leave <code>CaptionSources</code>
* blank.</p>
*/
inline InputCaptions& AddCaptionSources(const CaptionSource& value) { m_captionSourcesHasBeenSet = true; m_captionSources.push_back(value); return *this; }
/**
* <p>Source files for the input sidecar captions used during the transcoding
* process. To omit all sidecar captions, leave <code>CaptionSources</code>
* blank.</p>
*/
inline InputCaptions& AddCaptionSources(CaptionSource&& value) { m_captionSourcesHasBeenSet = true; m_captionSources.push_back(std::move(value)); return *this; }
private:
Aws::String m_mergePolicy;
bool m_mergePolicyHasBeenSet;
Aws::Vector<CaptionSource> m_captionSources;
bool m_captionSourcesHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,882 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/elastictranscoder/model/JobInput.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/elastictranscoder/model/JobOutput.h>
#include <aws/core/utils/memory/stl/AWSMap.h>
#include <aws/elastictranscoder/model/Timing.h>
#include <aws/elastictranscoder/model/Playlist.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>A section of the response body that provides information about the job that
* is created.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/Job">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API Job
{
public:
Job();
Job(Aws::Utils::Json::JsonView jsonValue);
Job& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The identifier that Elastic Transcoder assigned to the job. You use this
* value to get settings for the job or to delete the job.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The identifier that Elastic Transcoder assigned to the job. You use this
* value to get settings for the job or to delete the job.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The identifier that Elastic Transcoder assigned to the job. You use this
* value to get settings for the job or to delete the job.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The identifier that Elastic Transcoder assigned to the job. You use this
* value to get settings for the job or to delete the job.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The identifier that Elastic Transcoder assigned to the job. You use this
* value to get settings for the job or to delete the job.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The identifier that Elastic Transcoder assigned to the job. You use this
* value to get settings for the job or to delete the job.</p>
*/
inline Job& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The identifier that Elastic Transcoder assigned to the job. You use this
* value to get settings for the job or to delete the job.</p>
*/
inline Job& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The identifier that Elastic Transcoder assigned to the job. You use this
* value to get settings for the job or to delete the job.</p>
*/
inline Job& WithId(const char* value) { SetId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) for the job.</p>
*/
inline const Aws::String& GetArn() const{ return m_arn; }
/**
* <p>The Amazon Resource Name (ARN) for the job.</p>
*/
inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) for the job.</p>
*/
inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; }
/**
* <p>The Amazon Resource Name (ARN) for the job.</p>
*/
inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) for the job.</p>
*/
inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) for the job.</p>
*/
inline Job& WithArn(const Aws::String& value) { SetArn(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) for the job.</p>
*/
inline Job& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) for the job.</p>
*/
inline Job& WithArn(const char* value) { SetArn(value); return *this;}
/**
* <p> The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files. </p>
*/
inline const Aws::String& GetPipelineId() const{ return m_pipelineId; }
/**
* <p> The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files. </p>
*/
inline bool PipelineIdHasBeenSet() const { return m_pipelineIdHasBeenSet; }
/**
* <p> The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files. </p>
*/
inline void SetPipelineId(const Aws::String& value) { m_pipelineIdHasBeenSet = true; m_pipelineId = value; }
/**
* <p> The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files. </p>
*/
inline void SetPipelineId(Aws::String&& value) { m_pipelineIdHasBeenSet = true; m_pipelineId = std::move(value); }
/**
* <p> The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files. </p>
*/
inline void SetPipelineId(const char* value) { m_pipelineIdHasBeenSet = true; m_pipelineId.assign(value); }
/**
* <p> The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files. </p>
*/
inline Job& WithPipelineId(const Aws::String& value) { SetPipelineId(value); return *this;}
/**
* <p> The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files. </p>
*/
inline Job& WithPipelineId(Aws::String&& value) { SetPipelineId(std::move(value)); return *this;}
/**
* <p> The <code>Id</code> of the pipeline that you want Elastic Transcoder to use
* for transcoding. The pipeline determines several settings, including the Amazon
* S3 bucket from which Elastic Transcoder gets the files to transcode and the
* bucket into which Elastic Transcoder puts the transcoded files. </p>
*/
inline Job& WithPipelineId(const char* value) { SetPipelineId(value); return *this;}
/**
* <p>A section of the request or response body that provides information about the
* file that is being transcoded.</p>
*/
inline const JobInput& GetInput() const{ return m_input; }
/**
* <p>A section of the request or response body that provides information about the
* file that is being transcoded.</p>
*/
inline bool InputHasBeenSet() const { return m_inputHasBeenSet; }
/**
* <p>A section of the request or response body that provides information about the
* file that is being transcoded.</p>
*/
inline void SetInput(const JobInput& value) { m_inputHasBeenSet = true; m_input = value; }
/**
* <p>A section of the request or response body that provides information about the
* file that is being transcoded.</p>
*/
inline void SetInput(JobInput&& value) { m_inputHasBeenSet = true; m_input = std::move(value); }
/**
* <p>A section of the request or response body that provides information about the
* file that is being transcoded.</p>
*/
inline Job& WithInput(const JobInput& value) { SetInput(value); return *this;}
/**
* <p>A section of the request or response body that provides information about the
* file that is being transcoded.</p>
*/
inline Job& WithInput(JobInput&& value) { SetInput(std::move(value)); return *this;}
/**
* <p>Information about the files that you're transcoding. If you specified
* multiple files for this job, Elastic Transcoder stitches the files together to
* make one output.</p>
*/
inline const Aws::Vector<JobInput>& GetInputs() const{ return m_inputs; }
/**
* <p>Information about the files that you're transcoding. If you specified
* multiple files for this job, Elastic Transcoder stitches the files together to
* make one output.</p>
*/
inline bool InputsHasBeenSet() const { return m_inputsHasBeenSet; }
/**
* <p>Information about the files that you're transcoding. If you specified
* multiple files for this job, Elastic Transcoder stitches the files together to
* make one output.</p>
*/
inline void SetInputs(const Aws::Vector<JobInput>& value) { m_inputsHasBeenSet = true; m_inputs = value; }
/**
* <p>Information about the files that you're transcoding. If you specified
* multiple files for this job, Elastic Transcoder stitches the files together to
* make one output.</p>
*/
inline void SetInputs(Aws::Vector<JobInput>&& value) { m_inputsHasBeenSet = true; m_inputs = std::move(value); }
/**
* <p>Information about the files that you're transcoding. If you specified
* multiple files for this job, Elastic Transcoder stitches the files together to
* make one output.</p>
*/
inline Job& WithInputs(const Aws::Vector<JobInput>& value) { SetInputs(value); return *this;}
/**
* <p>Information about the files that you're transcoding. If you specified
* multiple files for this job, Elastic Transcoder stitches the files together to
* make one output.</p>
*/
inline Job& WithInputs(Aws::Vector<JobInput>&& value) { SetInputs(std::move(value)); return *this;}
/**
* <p>Information about the files that you're transcoding. If you specified
* multiple files for this job, Elastic Transcoder stitches the files together to
* make one output.</p>
*/
inline Job& AddInputs(const JobInput& value) { m_inputsHasBeenSet = true; m_inputs.push_back(value); return *this; }
/**
* <p>Information about the files that you're transcoding. If you specified
* multiple files for this job, Elastic Transcoder stitches the files together to
* make one output.</p>
*/
inline Job& AddInputs(JobInput&& value) { m_inputsHasBeenSet = true; m_inputs.push_back(std::move(value)); return *this; }
/**
* <p>If you specified one output for a job, information about that output. If you
* specified multiple outputs for a job, the Output object lists information about
* the first output. This duplicates the information that is listed for the first
* output in the Outputs object.</p> <p>Outputs recommended
* instead.</p> <p>A section of the request or response body that
* provides information about the transcoded (target) file. </p>
*/
inline const JobOutput& GetOutput() const{ return m_output; }
/**
* <p>If you specified one output for a job, information about that output. If you
* specified multiple outputs for a job, the Output object lists information about
* the first output. This duplicates the information that is listed for the first
* output in the Outputs object.</p> <p>Outputs recommended
* instead.</p> <p>A section of the request or response body that
* provides information about the transcoded (target) file. </p>
*/
inline bool OutputHasBeenSet() const { return m_outputHasBeenSet; }
/**
* <p>If you specified one output for a job, information about that output. If you
* specified multiple outputs for a job, the Output object lists information about
* the first output. This duplicates the information that is listed for the first
* output in the Outputs object.</p> <p>Outputs recommended
* instead.</p> <p>A section of the request or response body that
* provides information about the transcoded (target) file. </p>
*/
inline void SetOutput(const JobOutput& value) { m_outputHasBeenSet = true; m_output = value; }
/**
* <p>If you specified one output for a job, information about that output. If you
* specified multiple outputs for a job, the Output object lists information about
* the first output. This duplicates the information that is listed for the first
* output in the Outputs object.</p> <p>Outputs recommended
* instead.</p> <p>A section of the request or response body that
* provides information about the transcoded (target) file. </p>
*/
inline void SetOutput(JobOutput&& value) { m_outputHasBeenSet = true; m_output = std::move(value); }
/**
* <p>If you specified one output for a job, information about that output. If you
* specified multiple outputs for a job, the Output object lists information about
* the first output. This duplicates the information that is listed for the first
* output in the Outputs object.</p> <p>Outputs recommended
* instead.</p> <p>A section of the request or response body that
* provides information about the transcoded (target) file. </p>
*/
inline Job& WithOutput(const JobOutput& value) { SetOutput(value); return *this;}
/**
* <p>If you specified one output for a job, information about that output. If you
* specified multiple outputs for a job, the Output object lists information about
* the first output. This duplicates the information that is listed for the first
* output in the Outputs object.</p> <p>Outputs recommended
* instead.</p> <p>A section of the request or response body that
* provides information about the transcoded (target) file. </p>
*/
inline Job& WithOutput(JobOutput&& value) { SetOutput(std::move(value)); return *this;}
/**
* <p>Information about the output files. We recommend that you use the
* <code>Outputs</code> syntax for all jobs, even when you want Elastic Transcoder
* to transcode a file into only one format. Do not use both the
* <code>Outputs</code> and <code>Output</code> syntaxes in the same request. You
* can create a maximum of 30 outputs per job. </p> <p>If you specify more than one
* output for a job, Elastic Transcoder creates the files for each output in the
* order in which you specify them in the job.</p>
*/
inline const Aws::Vector<JobOutput>& GetOutputs() const{ return m_outputs; }
/**
* <p>Information about the output files. We recommend that you use the
* <code>Outputs</code> syntax for all jobs, even when you want Elastic Transcoder
* to transcode a file into only one format. Do not use both the
* <code>Outputs</code> and <code>Output</code> syntaxes in the same request. You
* can create a maximum of 30 outputs per job. </p> <p>If you specify more than one
* output for a job, Elastic Transcoder creates the files for each output in the
* order in which you specify them in the job.</p>
*/
inline bool OutputsHasBeenSet() const { return m_outputsHasBeenSet; }
/**
* <p>Information about the output files. We recommend that you use the
* <code>Outputs</code> syntax for all jobs, even when you want Elastic Transcoder
* to transcode a file into only one format. Do not use both the
* <code>Outputs</code> and <code>Output</code> syntaxes in the same request. You
* can create a maximum of 30 outputs per job. </p> <p>If you specify more than one
* output for a job, Elastic Transcoder creates the files for each output in the
* order in which you specify them in the job.</p>
*/
inline void SetOutputs(const Aws::Vector<JobOutput>& value) { m_outputsHasBeenSet = true; m_outputs = value; }
/**
* <p>Information about the output files. We recommend that you use the
* <code>Outputs</code> syntax for all jobs, even when you want Elastic Transcoder
* to transcode a file into only one format. Do not use both the
* <code>Outputs</code> and <code>Output</code> syntaxes in the same request. You
* can create a maximum of 30 outputs per job. </p> <p>If you specify more than one
* output for a job, Elastic Transcoder creates the files for each output in the
* order in which you specify them in the job.</p>
*/
inline void SetOutputs(Aws::Vector<JobOutput>&& value) { m_outputsHasBeenSet = true; m_outputs = std::move(value); }
/**
* <p>Information about the output files. We recommend that you use the
* <code>Outputs</code> syntax for all jobs, even when you want Elastic Transcoder
* to transcode a file into only one format. Do not use both the
* <code>Outputs</code> and <code>Output</code> syntaxes in the same request. You
* can create a maximum of 30 outputs per job. </p> <p>If you specify more than one
* output for a job, Elastic Transcoder creates the files for each output in the
* order in which you specify them in the job.</p>
*/
inline Job& WithOutputs(const Aws::Vector<JobOutput>& value) { SetOutputs(value); return *this;}
/**
* <p>Information about the output files. We recommend that you use the
* <code>Outputs</code> syntax for all jobs, even when you want Elastic Transcoder
* to transcode a file into only one format. Do not use both the
* <code>Outputs</code> and <code>Output</code> syntaxes in the same request. You
* can create a maximum of 30 outputs per job. </p> <p>If you specify more than one
* output for a job, Elastic Transcoder creates the files for each output in the
* order in which you specify them in the job.</p>
*/
inline Job& WithOutputs(Aws::Vector<JobOutput>&& value) { SetOutputs(std::move(value)); return *this;}
/**
* <p>Information about the output files. We recommend that you use the
* <code>Outputs</code> syntax for all jobs, even when you want Elastic Transcoder
* to transcode a file into only one format. Do not use both the
* <code>Outputs</code> and <code>Output</code> syntaxes in the same request. You
* can create a maximum of 30 outputs per job. </p> <p>If you specify more than one
* output for a job, Elastic Transcoder creates the files for each output in the
* order in which you specify them in the job.</p>
*/
inline Job& AddOutputs(const JobOutput& value) { m_outputsHasBeenSet = true; m_outputs.push_back(value); return *this; }
/**
* <p>Information about the output files. We recommend that you use the
* <code>Outputs</code> syntax for all jobs, even when you want Elastic Transcoder
* to transcode a file into only one format. Do not use both the
* <code>Outputs</code> and <code>Output</code> syntaxes in the same request. You
* can create a maximum of 30 outputs per job. </p> <p>If you specify more than one
* output for a job, Elastic Transcoder creates the files for each output in the
* order in which you specify them in the job.</p>
*/
inline Job& AddOutputs(JobOutput&& value) { m_outputsHasBeenSet = true; m_outputs.push_back(std::move(value)); return *this; }
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists. We recommend that you add a / or some other delimiter to the end of
* the <code>OutputKeyPrefix</code>.</p>
*/
inline const Aws::String& GetOutputKeyPrefix() const{ return m_outputKeyPrefix; }
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists. We recommend that you add a / or some other delimiter to the end of
* the <code>OutputKeyPrefix</code>.</p>
*/
inline bool OutputKeyPrefixHasBeenSet() const { return m_outputKeyPrefixHasBeenSet; }
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists. We recommend that you add a / or some other delimiter to the end of
* the <code>OutputKeyPrefix</code>.</p>
*/
inline void SetOutputKeyPrefix(const Aws::String& value) { m_outputKeyPrefixHasBeenSet = true; m_outputKeyPrefix = value; }
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists. We recommend that you add a / or some other delimiter to the end of
* the <code>OutputKeyPrefix</code>.</p>
*/
inline void SetOutputKeyPrefix(Aws::String&& value) { m_outputKeyPrefixHasBeenSet = true; m_outputKeyPrefix = std::move(value); }
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists. We recommend that you add a / or some other delimiter to the end of
* the <code>OutputKeyPrefix</code>.</p>
*/
inline void SetOutputKeyPrefix(const char* value) { m_outputKeyPrefixHasBeenSet = true; m_outputKeyPrefix.assign(value); }
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists. We recommend that you add a / or some other delimiter to the end of
* the <code>OutputKeyPrefix</code>.</p>
*/
inline Job& WithOutputKeyPrefix(const Aws::String& value) { SetOutputKeyPrefix(value); return *this;}
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists. We recommend that you add a / or some other delimiter to the end of
* the <code>OutputKeyPrefix</code>.</p>
*/
inline Job& WithOutputKeyPrefix(Aws::String&& value) { SetOutputKeyPrefix(std::move(value)); return *this;}
/**
* <p>The value, if any, that you want Elastic Transcoder to prepend to the names
* of all files that this job creates, including output files, thumbnails, and
* playlists. We recommend that you add a / or some other delimiter to the end of
* the <code>OutputKeyPrefix</code>.</p>
*/
inline Job& WithOutputKeyPrefix(const char* value) { SetOutputKeyPrefix(value); return *this;}
/**
* <p>Outputs in Fragmented MP4 or MPEG-TS format only.</p>
* <p>If you specify a preset in <code>PresetId</code> for which the
* value of <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS),
* <code>Playlists</code> contains information about the master playlists that you
* want Elastic Transcoder to create.</p> <p>The maximum number of master playlists
* in a job is 30.</p>
*/
inline const Aws::Vector<Playlist>& GetPlaylists() const{ return m_playlists; }
/**
* <p>Outputs in Fragmented MP4 or MPEG-TS format only.</p>
* <p>If you specify a preset in <code>PresetId</code> for which the
* value of <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS),
* <code>Playlists</code> contains information about the master playlists that you
* want Elastic Transcoder to create.</p> <p>The maximum number of master playlists
* in a job is 30.</p>
*/
inline bool PlaylistsHasBeenSet() const { return m_playlistsHasBeenSet; }
/**
* <p>Outputs in Fragmented MP4 or MPEG-TS format only.</p>
* <p>If you specify a preset in <code>PresetId</code> for which the
* value of <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS),
* <code>Playlists</code> contains information about the master playlists that you
* want Elastic Transcoder to create.</p> <p>The maximum number of master playlists
* in a job is 30.</p>
*/
inline void SetPlaylists(const Aws::Vector<Playlist>& value) { m_playlistsHasBeenSet = true; m_playlists = value; }
/**
* <p>Outputs in Fragmented MP4 or MPEG-TS format only.</p>
* <p>If you specify a preset in <code>PresetId</code> for which the
* value of <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS),
* <code>Playlists</code> contains information about the master playlists that you
* want Elastic Transcoder to create.</p> <p>The maximum number of master playlists
* in a job is 30.</p>
*/
inline void SetPlaylists(Aws::Vector<Playlist>&& value) { m_playlistsHasBeenSet = true; m_playlists = std::move(value); }
/**
* <p>Outputs in Fragmented MP4 or MPEG-TS format only.</p>
* <p>If you specify a preset in <code>PresetId</code> for which the
* value of <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS),
* <code>Playlists</code> contains information about the master playlists that you
* want Elastic Transcoder to create.</p> <p>The maximum number of master playlists
* in a job is 30.</p>
*/
inline Job& WithPlaylists(const Aws::Vector<Playlist>& value) { SetPlaylists(value); return *this;}
/**
* <p>Outputs in Fragmented MP4 or MPEG-TS format only.</p>
* <p>If you specify a preset in <code>PresetId</code> for which the
* value of <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS),
* <code>Playlists</code> contains information about the master playlists that you
* want Elastic Transcoder to create.</p> <p>The maximum number of master playlists
* in a job is 30.</p>
*/
inline Job& WithPlaylists(Aws::Vector<Playlist>&& value) { SetPlaylists(std::move(value)); return *this;}
/**
* <p>Outputs in Fragmented MP4 or MPEG-TS format only.</p>
* <p>If you specify a preset in <code>PresetId</code> for which the
* value of <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS),
* <code>Playlists</code> contains information about the master playlists that you
* want Elastic Transcoder to create.</p> <p>The maximum number of master playlists
* in a job is 30.</p>
*/
inline Job& AddPlaylists(const Playlist& value) { m_playlistsHasBeenSet = true; m_playlists.push_back(value); return *this; }
/**
* <p>Outputs in Fragmented MP4 or MPEG-TS format only.</p>
* <p>If you specify a preset in <code>PresetId</code> for which the
* value of <code>Container</code> is fmp4 (Fragmented MP4) or ts (MPEG-TS),
* <code>Playlists</code> contains information about the master playlists that you
* want Elastic Transcoder to create.</p> <p>The maximum number of master playlists
* in a job is 30.</p>
*/
inline Job& AddPlaylists(Playlist&& value) { m_playlistsHasBeenSet = true; m_playlists.push_back(std::move(value)); return *this; }
/**
* <p> The status of the job: <code>Submitted</code>, <code>Progressing</code>,
* <code>Complete</code>, <code>Canceled</code>, or <code>Error</code>. </p>
*/
inline const Aws::String& GetStatus() const{ return m_status; }
/**
* <p> The status of the job: <code>Submitted</code>, <code>Progressing</code>,
* <code>Complete</code>, <code>Canceled</code>, or <code>Error</code>. </p>
*/
inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
/**
* <p> The status of the job: <code>Submitted</code>, <code>Progressing</code>,
* <code>Complete</code>, <code>Canceled</code>, or <code>Error</code>. </p>
*/
inline void SetStatus(const Aws::String& value) { m_statusHasBeenSet = true; m_status = value; }
/**
* <p> The status of the job: <code>Submitted</code>, <code>Progressing</code>,
* <code>Complete</code>, <code>Canceled</code>, or <code>Error</code>. </p>
*/
inline void SetStatus(Aws::String&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
/**
* <p> The status of the job: <code>Submitted</code>, <code>Progressing</code>,
* <code>Complete</code>, <code>Canceled</code>, or <code>Error</code>. </p>
*/
inline void SetStatus(const char* value) { m_statusHasBeenSet = true; m_status.assign(value); }
/**
* <p> The status of the job: <code>Submitted</code>, <code>Progressing</code>,
* <code>Complete</code>, <code>Canceled</code>, or <code>Error</code>. </p>
*/
inline Job& WithStatus(const Aws::String& value) { SetStatus(value); return *this;}
/**
* <p> The status of the job: <code>Submitted</code>, <code>Progressing</code>,
* <code>Complete</code>, <code>Canceled</code>, or <code>Error</code>. </p>
*/
inline Job& WithStatus(Aws::String&& value) { SetStatus(std::move(value)); return *this;}
/**
* <p> The status of the job: <code>Submitted</code>, <code>Progressing</code>,
* <code>Complete</code>, <code>Canceled</code>, or <code>Error</code>. </p>
*/
inline Job& WithStatus(const char* value) { SetStatus(value); return *this;}
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p> <p>Metadata <code>keys</code> and <code>values</code> must use
* characters from the following list:</p> <ul> <li> <p> <code>0-9</code> </p>
* </li> <li> <p> <code>A-Z</code> and <code>a-z</code> </p> </li> <li> <p>
* <code>Space</code> </p> </li> <li> <p>The following symbols:
* <code>_.:/=+-%@</code> </p> </li> </ul>
*/
inline const Aws::Map<Aws::String, Aws::String>& GetUserMetadata() const{ return m_userMetadata; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p> <p>Metadata <code>keys</code> and <code>values</code> must use
* characters from the following list:</p> <ul> <li> <p> <code>0-9</code> </p>
* </li> <li> <p> <code>A-Z</code> and <code>a-z</code> </p> </li> <li> <p>
* <code>Space</code> </p> </li> <li> <p>The following symbols:
* <code>_.:/=+-%@</code> </p> </li> </ul>
*/
inline bool UserMetadataHasBeenSet() const { return m_userMetadataHasBeenSet; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p> <p>Metadata <code>keys</code> and <code>values</code> must use
* characters from the following list:</p> <ul> <li> <p> <code>0-9</code> </p>
* </li> <li> <p> <code>A-Z</code> and <code>a-z</code> </p> </li> <li> <p>
* <code>Space</code> </p> </li> <li> <p>The following symbols:
* <code>_.:/=+-%@</code> </p> </li> </ul>
*/
inline void SetUserMetadata(const Aws::Map<Aws::String, Aws::String>& value) { m_userMetadataHasBeenSet = true; m_userMetadata = value; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p> <p>Metadata <code>keys</code> and <code>values</code> must use
* characters from the following list:</p> <ul> <li> <p> <code>0-9</code> </p>
* </li> <li> <p> <code>A-Z</code> and <code>a-z</code> </p> </li> <li> <p>
* <code>Space</code> </p> </li> <li> <p>The following symbols:
* <code>_.:/=+-%@</code> </p> </li> </ul>
*/
inline void SetUserMetadata(Aws::Map<Aws::String, Aws::String>&& value) { m_userMetadataHasBeenSet = true; m_userMetadata = std::move(value); }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p> <p>Metadata <code>keys</code> and <code>values</code> must use
* characters from the following list:</p> <ul> <li> <p> <code>0-9</code> </p>
* </li> <li> <p> <code>A-Z</code> and <code>a-z</code> </p> </li> <li> <p>
* <code>Space</code> </p> </li> <li> <p>The following symbols:
* <code>_.:/=+-%@</code> </p> </li> </ul>
*/
inline Job& WithUserMetadata(const Aws::Map<Aws::String, Aws::String>& value) { SetUserMetadata(value); return *this;}
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p> <p>Metadata <code>keys</code> and <code>values</code> must use
* characters from the following list:</p> <ul> <li> <p> <code>0-9</code> </p>
* </li> <li> <p> <code>A-Z</code> and <code>a-z</code> </p> </li> <li> <p>
* <code>Space</code> </p> </li> <li> <p>The following symbols:
* <code>_.:/=+-%@</code> </p> </li> </ul>
*/
inline Job& WithUserMetadata(Aws::Map<Aws::String, Aws::String>&& value) { SetUserMetadata(std::move(value)); return *this;}
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p> <p>Metadata <code>keys</code> and <code>values</code> must use
* characters from the following list:</p> <ul> <li> <p> <code>0-9</code> </p>
* </li> <li> <p> <code>A-Z</code> and <code>a-z</code> </p> </li> <li> <p>
* <code>Space</code> </p> </li> <li> <p>The following symbols:
* <code>_.:/=+-%@</code> </p> </li> </ul>
*/
inline Job& AddUserMetadata(const Aws::String& key, const Aws::String& value) { m_userMetadataHasBeenSet = true; m_userMetadata.emplace(key, value); return *this; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p> <p>Metadata <code>keys</code> and <code>values</code> must use
* characters from the following list:</p> <ul> <li> <p> <code>0-9</code> </p>
* </li> <li> <p> <code>A-Z</code> and <code>a-z</code> </p> </li> <li> <p>
* <code>Space</code> </p> </li> <li> <p>The following symbols:
* <code>_.:/=+-%@</code> </p> </li> </ul>
*/
inline Job& AddUserMetadata(Aws::String&& key, const Aws::String& value) { m_userMetadataHasBeenSet = true; m_userMetadata.emplace(std::move(key), value); return *this; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p> <p>Metadata <code>keys</code> and <code>values</code> must use
* characters from the following list:</p> <ul> <li> <p> <code>0-9</code> </p>
* </li> <li> <p> <code>A-Z</code> and <code>a-z</code> </p> </li> <li> <p>
* <code>Space</code> </p> </li> <li> <p>The following symbols:
* <code>_.:/=+-%@</code> </p> </li> </ul>
*/
inline Job& AddUserMetadata(const Aws::String& key, Aws::String&& value) { m_userMetadataHasBeenSet = true; m_userMetadata.emplace(key, std::move(value)); return *this; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p> <p>Metadata <code>keys</code> and <code>values</code> must use
* characters from the following list:</p> <ul> <li> <p> <code>0-9</code> </p>
* </li> <li> <p> <code>A-Z</code> and <code>a-z</code> </p> </li> <li> <p>
* <code>Space</code> </p> </li> <li> <p>The following symbols:
* <code>_.:/=+-%@</code> </p> </li> </ul>
*/
inline Job& AddUserMetadata(Aws::String&& key, Aws::String&& value) { m_userMetadataHasBeenSet = true; m_userMetadata.emplace(std::move(key), std::move(value)); return *this; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p> <p>Metadata <code>keys</code> and <code>values</code> must use
* characters from the following list:</p> <ul> <li> <p> <code>0-9</code> </p>
* </li> <li> <p> <code>A-Z</code> and <code>a-z</code> </p> </li> <li> <p>
* <code>Space</code> </p> </li> <li> <p>The following symbols:
* <code>_.:/=+-%@</code> </p> </li> </ul>
*/
inline Job& AddUserMetadata(const char* key, Aws::String&& value) { m_userMetadataHasBeenSet = true; m_userMetadata.emplace(key, std::move(value)); return *this; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p> <p>Metadata <code>keys</code> and <code>values</code> must use
* characters from the following list:</p> <ul> <li> <p> <code>0-9</code> </p>
* </li> <li> <p> <code>A-Z</code> and <code>a-z</code> </p> </li> <li> <p>
* <code>Space</code> </p> </li> <li> <p>The following symbols:
* <code>_.:/=+-%@</code> </p> </li> </ul>
*/
inline Job& AddUserMetadata(Aws::String&& key, const char* value) { m_userMetadataHasBeenSet = true; m_userMetadata.emplace(std::move(key), value); return *this; }
/**
* <p>User-defined metadata that you want to associate with an Elastic Transcoder
* job. You specify metadata in <code>key/value</code> pairs, and you can add up to
* 10 <code>key/value</code> pairs per job. Elastic Transcoder does not guarantee
* that <code>key/value</code> pairs are returned in the same order in which you
* specify them.</p> <p>Metadata <code>keys</code> and <code>values</code> must use
* characters from the following list:</p> <ul> <li> <p> <code>0-9</code> </p>
* </li> <li> <p> <code>A-Z</code> and <code>a-z</code> </p> </li> <li> <p>
* <code>Space</code> </p> </li> <li> <p>The following symbols:
* <code>_.:/=+-%@</code> </p> </li> </ul>
*/
inline Job& AddUserMetadata(const char* key, const char* value) { m_userMetadataHasBeenSet = true; m_userMetadata.emplace(key, value); return *this; }
/**
* <p>Details about the timing of a job.</p>
*/
inline const Timing& GetTiming() const{ return m_timing; }
/**
* <p>Details about the timing of a job.</p>
*/
inline bool TimingHasBeenSet() const { return m_timingHasBeenSet; }
/**
* <p>Details about the timing of a job.</p>
*/
inline void SetTiming(const Timing& value) { m_timingHasBeenSet = true; m_timing = value; }
/**
* <p>Details about the timing of a job.</p>
*/
inline void SetTiming(Timing&& value) { m_timingHasBeenSet = true; m_timing = std::move(value); }
/**
* <p>Details about the timing of a job.</p>
*/
inline Job& WithTiming(const Timing& value) { SetTiming(value); return *this;}
/**
* <p>Details about the timing of a job.</p>
*/
inline Job& WithTiming(Timing&& value) { SetTiming(std::move(value)); return *this;}
private:
Aws::String m_id;
bool m_idHasBeenSet;
Aws::String m_arn;
bool m_arnHasBeenSet;
Aws::String m_pipelineId;
bool m_pipelineIdHasBeenSet;
JobInput m_input;
bool m_inputHasBeenSet;
Aws::Vector<JobInput> m_inputs;
bool m_inputsHasBeenSet;
JobOutput m_output;
bool m_outputHasBeenSet;
Aws::Vector<JobOutput> m_outputs;
bool m_outputsHasBeenSet;
Aws::String m_outputKeyPrefix;
bool m_outputKeyPrefixHasBeenSet;
Aws::Vector<Playlist> m_playlists;
bool m_playlistsHasBeenSet;
Aws::String m_status;
bool m_statusHasBeenSet;
Aws::Map<Aws::String, Aws::String> m_userMetadata;
bool m_userMetadataHasBeenSet;
Timing m_timing;
bool m_timingHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,215 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/elastictranscoder/model/Artwork.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The .jpg or .png file associated with an audio file.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/JobAlbumArt">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API JobAlbumArt
{
public:
JobAlbumArt();
JobAlbumArt(Aws::Utils::Json::JsonView jsonValue);
JobAlbumArt& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple album artwork files.</p> <ul> <li> <p> <code>Replace:</code> The
* specified album art replaces any existing album art.</p> </li> <li> <p>
* <code>Prepend:</code> The specified album art is placed in front of any existing
* album art.</p> </li> <li> <p> <code>Append:</code> The specified album art is
* placed after any existing album art.</p> </li> <li> <p> <code>Fallback:</code>
* If the original input file contains artwork, Elastic Transcoder uses that
* artwork for the output. If the original input does not contain artwork, Elastic
* Transcoder uses the specified album art file.</p> </li> </ul>
*/
inline const Aws::String& GetMergePolicy() const{ return m_mergePolicy; }
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple album artwork files.</p> <ul> <li> <p> <code>Replace:</code> The
* specified album art replaces any existing album art.</p> </li> <li> <p>
* <code>Prepend:</code> The specified album art is placed in front of any existing
* album art.</p> </li> <li> <p> <code>Append:</code> The specified album art is
* placed after any existing album art.</p> </li> <li> <p> <code>Fallback:</code>
* If the original input file contains artwork, Elastic Transcoder uses that
* artwork for the output. If the original input does not contain artwork, Elastic
* Transcoder uses the specified album art file.</p> </li> </ul>
*/
inline bool MergePolicyHasBeenSet() const { return m_mergePolicyHasBeenSet; }
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple album artwork files.</p> <ul> <li> <p> <code>Replace:</code> The
* specified album art replaces any existing album art.</p> </li> <li> <p>
* <code>Prepend:</code> The specified album art is placed in front of any existing
* album art.</p> </li> <li> <p> <code>Append:</code> The specified album art is
* placed after any existing album art.</p> </li> <li> <p> <code>Fallback:</code>
* If the original input file contains artwork, Elastic Transcoder uses that
* artwork for the output. If the original input does not contain artwork, Elastic
* Transcoder uses the specified album art file.</p> </li> </ul>
*/
inline void SetMergePolicy(const Aws::String& value) { m_mergePolicyHasBeenSet = true; m_mergePolicy = value; }
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple album artwork files.</p> <ul> <li> <p> <code>Replace:</code> The
* specified album art replaces any existing album art.</p> </li> <li> <p>
* <code>Prepend:</code> The specified album art is placed in front of any existing
* album art.</p> </li> <li> <p> <code>Append:</code> The specified album art is
* placed after any existing album art.</p> </li> <li> <p> <code>Fallback:</code>
* If the original input file contains artwork, Elastic Transcoder uses that
* artwork for the output. If the original input does not contain artwork, Elastic
* Transcoder uses the specified album art file.</p> </li> </ul>
*/
inline void SetMergePolicy(Aws::String&& value) { m_mergePolicyHasBeenSet = true; m_mergePolicy = std::move(value); }
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple album artwork files.</p> <ul> <li> <p> <code>Replace:</code> The
* specified album art replaces any existing album art.</p> </li> <li> <p>
* <code>Prepend:</code> The specified album art is placed in front of any existing
* album art.</p> </li> <li> <p> <code>Append:</code> The specified album art is
* placed after any existing album art.</p> </li> <li> <p> <code>Fallback:</code>
* If the original input file contains artwork, Elastic Transcoder uses that
* artwork for the output. If the original input does not contain artwork, Elastic
* Transcoder uses the specified album art file.</p> </li> </ul>
*/
inline void SetMergePolicy(const char* value) { m_mergePolicyHasBeenSet = true; m_mergePolicy.assign(value); }
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple album artwork files.</p> <ul> <li> <p> <code>Replace:</code> The
* specified album art replaces any existing album art.</p> </li> <li> <p>
* <code>Prepend:</code> The specified album art is placed in front of any existing
* album art.</p> </li> <li> <p> <code>Append:</code> The specified album art is
* placed after any existing album art.</p> </li> <li> <p> <code>Fallback:</code>
* If the original input file contains artwork, Elastic Transcoder uses that
* artwork for the output. If the original input does not contain artwork, Elastic
* Transcoder uses the specified album art file.</p> </li> </ul>
*/
inline JobAlbumArt& WithMergePolicy(const Aws::String& value) { SetMergePolicy(value); return *this;}
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple album artwork files.</p> <ul> <li> <p> <code>Replace:</code> The
* specified album art replaces any existing album art.</p> </li> <li> <p>
* <code>Prepend:</code> The specified album art is placed in front of any existing
* album art.</p> </li> <li> <p> <code>Append:</code> The specified album art is
* placed after any existing album art.</p> </li> <li> <p> <code>Fallback:</code>
* If the original input file contains artwork, Elastic Transcoder uses that
* artwork for the output. If the original input does not contain artwork, Elastic
* Transcoder uses the specified album art file.</p> </li> </ul>
*/
inline JobAlbumArt& WithMergePolicy(Aws::String&& value) { SetMergePolicy(std::move(value)); return *this;}
/**
* <p>A policy that determines how Elastic Transcoder handles the existence of
* multiple album artwork files.</p> <ul> <li> <p> <code>Replace:</code> The
* specified album art replaces any existing album art.</p> </li> <li> <p>
* <code>Prepend:</code> The specified album art is placed in front of any existing
* album art.</p> </li> <li> <p> <code>Append:</code> The specified album art is
* placed after any existing album art.</p> </li> <li> <p> <code>Fallback:</code>
* If the original input file contains artwork, Elastic Transcoder uses that
* artwork for the output. If the original input does not contain artwork, Elastic
* Transcoder uses the specified album art file.</p> </li> </ul>
*/
inline JobAlbumArt& WithMergePolicy(const char* value) { SetMergePolicy(value); return *this;}
/**
* <p>The file to be used as album art. There can be multiple artworks associated
* with an audio file, to a maximum of 20. Valid formats are <code>.jpg</code> and
* <code>.png</code> </p>
*/
inline const Aws::Vector<Artwork>& GetArtwork() const{ return m_artwork; }
/**
* <p>The file to be used as album art. There can be multiple artworks associated
* with an audio file, to a maximum of 20. Valid formats are <code>.jpg</code> and
* <code>.png</code> </p>
*/
inline bool ArtworkHasBeenSet() const { return m_artworkHasBeenSet; }
/**
* <p>The file to be used as album art. There can be multiple artworks associated
* with an audio file, to a maximum of 20. Valid formats are <code>.jpg</code> and
* <code>.png</code> </p>
*/
inline void SetArtwork(const Aws::Vector<Artwork>& value) { m_artworkHasBeenSet = true; m_artwork = value; }
/**
* <p>The file to be used as album art. There can be multiple artworks associated
* with an audio file, to a maximum of 20. Valid formats are <code>.jpg</code> and
* <code>.png</code> </p>
*/
inline void SetArtwork(Aws::Vector<Artwork>&& value) { m_artworkHasBeenSet = true; m_artwork = std::move(value); }
/**
* <p>The file to be used as album art. There can be multiple artworks associated
* with an audio file, to a maximum of 20. Valid formats are <code>.jpg</code> and
* <code>.png</code> </p>
*/
inline JobAlbumArt& WithArtwork(const Aws::Vector<Artwork>& value) { SetArtwork(value); return *this;}
/**
* <p>The file to be used as album art. There can be multiple artworks associated
* with an audio file, to a maximum of 20. Valid formats are <code>.jpg</code> and
* <code>.png</code> </p>
*/
inline JobAlbumArt& WithArtwork(Aws::Vector<Artwork>&& value) { SetArtwork(std::move(value)); return *this;}
/**
* <p>The file to be used as album art. There can be multiple artworks associated
* with an audio file, to a maximum of 20. Valid formats are <code>.jpg</code> and
* <code>.png</code> </p>
*/
inline JobAlbumArt& AddArtwork(const Artwork& value) { m_artworkHasBeenSet = true; m_artwork.push_back(value); return *this; }
/**
* <p>The file to be used as album art. There can be multiple artworks associated
* with an audio file, to a maximum of 20. Valid formats are <code>.jpg</code> and
* <code>.png</code> </p>
*/
inline JobAlbumArt& AddArtwork(Artwork&& value) { m_artworkHasBeenSet = true; m_artwork.push_back(std::move(value)); return *this; }
private:
Aws::String m_mergePolicy;
bool m_mergePolicyHasBeenSet;
Aws::Vector<Artwork> m_artwork;
bool m_artworkHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,911 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/elastictranscoder/model/Encryption.h>
#include <aws/elastictranscoder/model/TimeSpan.h>
#include <aws/elastictranscoder/model/InputCaptions.h>
#include <aws/elastictranscoder/model/DetectedProperties.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>Information about the file that you're transcoding.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/JobInput">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API JobInput
{
public:
JobInput();
JobInput(Aws::Utils::Json::JsonView jsonValue);
JobInput& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p> The name of the file to transcode. Elsewhere in the body of the JSON block
* is the the ID of the pipeline to use for processing the job. The
* <code>InputBucket</code> object in that pipeline tells Elastic Transcoder which
* Amazon S3 bucket to get the file from. </p> <p>If the file name includes a
* prefix, such as <code>cooking/lasagna.mpg</code>, include the prefix in the key.
* If the file isn't in the specified bucket, Elastic Transcoder returns an
* error.</p>
*/
inline const Aws::String& GetKey() const{ return m_key; }
/**
* <p> The name of the file to transcode. Elsewhere in the body of the JSON block
* is the the ID of the pipeline to use for processing the job. The
* <code>InputBucket</code> object in that pipeline tells Elastic Transcoder which
* Amazon S3 bucket to get the file from. </p> <p>If the file name includes a
* prefix, such as <code>cooking/lasagna.mpg</code>, include the prefix in the key.
* If the file isn't in the specified bucket, Elastic Transcoder returns an
* error.</p>
*/
inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
/**
* <p> The name of the file to transcode. Elsewhere in the body of the JSON block
* is the the ID of the pipeline to use for processing the job. The
* <code>InputBucket</code> object in that pipeline tells Elastic Transcoder which
* Amazon S3 bucket to get the file from. </p> <p>If the file name includes a
* prefix, such as <code>cooking/lasagna.mpg</code>, include the prefix in the key.
* If the file isn't in the specified bucket, Elastic Transcoder returns an
* error.</p>
*/
inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; }
/**
* <p> The name of the file to transcode. Elsewhere in the body of the JSON block
* is the the ID of the pipeline to use for processing the job. The
* <code>InputBucket</code> object in that pipeline tells Elastic Transcoder which
* Amazon S3 bucket to get the file from. </p> <p>If the file name includes a
* prefix, such as <code>cooking/lasagna.mpg</code>, include the prefix in the key.
* If the file isn't in the specified bucket, Elastic Transcoder returns an
* error.</p>
*/
inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); }
/**
* <p> The name of the file to transcode. Elsewhere in the body of the JSON block
* is the the ID of the pipeline to use for processing the job. The
* <code>InputBucket</code> object in that pipeline tells Elastic Transcoder which
* Amazon S3 bucket to get the file from. </p> <p>If the file name includes a
* prefix, such as <code>cooking/lasagna.mpg</code>, include the prefix in the key.
* If the file isn't in the specified bucket, Elastic Transcoder returns an
* error.</p>
*/
inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); }
/**
* <p> The name of the file to transcode. Elsewhere in the body of the JSON block
* is the the ID of the pipeline to use for processing the job. The
* <code>InputBucket</code> object in that pipeline tells Elastic Transcoder which
* Amazon S3 bucket to get the file from. </p> <p>If the file name includes a
* prefix, such as <code>cooking/lasagna.mpg</code>, include the prefix in the key.
* If the file isn't in the specified bucket, Elastic Transcoder returns an
* error.</p>
*/
inline JobInput& WithKey(const Aws::String& value) { SetKey(value); return *this;}
/**
* <p> The name of the file to transcode. Elsewhere in the body of the JSON block
* is the the ID of the pipeline to use for processing the job. The
* <code>InputBucket</code> object in that pipeline tells Elastic Transcoder which
* Amazon S3 bucket to get the file from. </p> <p>If the file name includes a
* prefix, such as <code>cooking/lasagna.mpg</code>, include the prefix in the key.
* If the file isn't in the specified bucket, Elastic Transcoder returns an
* error.</p>
*/
inline JobInput& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;}
/**
* <p> The name of the file to transcode. Elsewhere in the body of the JSON block
* is the the ID of the pipeline to use for processing the job. The
* <code>InputBucket</code> object in that pipeline tells Elastic Transcoder which
* Amazon S3 bucket to get the file from. </p> <p>If the file name includes a
* prefix, such as <code>cooking/lasagna.mpg</code>, include the prefix in the key.
* If the file isn't in the specified bucket, Elastic Transcoder returns an
* error.</p>
*/
inline JobInput& WithKey(const char* value) { SetKey(value); return *this;}
/**
* <p>The frame rate of the input file. If you want Elastic Transcoder to
* automatically detect the frame rate of the input file, specify
* <code>auto</code>. If you want to specify the frame rate for the input file,
* enter one of the following values: </p> <p> <code>10</code>, <code>15</code>,
* <code>23.97</code>, <code>24</code>, <code>25</code>, <code>29.97</code>,
* <code>30</code>, <code>60</code> </p> <p>If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the frame
* rate.</p>
*/
inline const Aws::String& GetFrameRate() const{ return m_frameRate; }
/**
* <p>The frame rate of the input file. If you want Elastic Transcoder to
* automatically detect the frame rate of the input file, specify
* <code>auto</code>. If you want to specify the frame rate for the input file,
* enter one of the following values: </p> <p> <code>10</code>, <code>15</code>,
* <code>23.97</code>, <code>24</code>, <code>25</code>, <code>29.97</code>,
* <code>30</code>, <code>60</code> </p> <p>If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the frame
* rate.</p>
*/
inline bool FrameRateHasBeenSet() const { return m_frameRateHasBeenSet; }
/**
* <p>The frame rate of the input file. If you want Elastic Transcoder to
* automatically detect the frame rate of the input file, specify
* <code>auto</code>. If you want to specify the frame rate for the input file,
* enter one of the following values: </p> <p> <code>10</code>, <code>15</code>,
* <code>23.97</code>, <code>24</code>, <code>25</code>, <code>29.97</code>,
* <code>30</code>, <code>60</code> </p> <p>If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the frame
* rate.</p>
*/
inline void SetFrameRate(const Aws::String& value) { m_frameRateHasBeenSet = true; m_frameRate = value; }
/**
* <p>The frame rate of the input file. If you want Elastic Transcoder to
* automatically detect the frame rate of the input file, specify
* <code>auto</code>. If you want to specify the frame rate for the input file,
* enter one of the following values: </p> <p> <code>10</code>, <code>15</code>,
* <code>23.97</code>, <code>24</code>, <code>25</code>, <code>29.97</code>,
* <code>30</code>, <code>60</code> </p> <p>If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the frame
* rate.</p>
*/
inline void SetFrameRate(Aws::String&& value) { m_frameRateHasBeenSet = true; m_frameRate = std::move(value); }
/**
* <p>The frame rate of the input file. If you want Elastic Transcoder to
* automatically detect the frame rate of the input file, specify
* <code>auto</code>. If you want to specify the frame rate for the input file,
* enter one of the following values: </p> <p> <code>10</code>, <code>15</code>,
* <code>23.97</code>, <code>24</code>, <code>25</code>, <code>29.97</code>,
* <code>30</code>, <code>60</code> </p> <p>If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the frame
* rate.</p>
*/
inline void SetFrameRate(const char* value) { m_frameRateHasBeenSet = true; m_frameRate.assign(value); }
/**
* <p>The frame rate of the input file. If you want Elastic Transcoder to
* automatically detect the frame rate of the input file, specify
* <code>auto</code>. If you want to specify the frame rate for the input file,
* enter one of the following values: </p> <p> <code>10</code>, <code>15</code>,
* <code>23.97</code>, <code>24</code>, <code>25</code>, <code>29.97</code>,
* <code>30</code>, <code>60</code> </p> <p>If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the frame
* rate.</p>
*/
inline JobInput& WithFrameRate(const Aws::String& value) { SetFrameRate(value); return *this;}
/**
* <p>The frame rate of the input file. If you want Elastic Transcoder to
* automatically detect the frame rate of the input file, specify
* <code>auto</code>. If you want to specify the frame rate for the input file,
* enter one of the following values: </p> <p> <code>10</code>, <code>15</code>,
* <code>23.97</code>, <code>24</code>, <code>25</code>, <code>29.97</code>,
* <code>30</code>, <code>60</code> </p> <p>If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the frame
* rate.</p>
*/
inline JobInput& WithFrameRate(Aws::String&& value) { SetFrameRate(std::move(value)); return *this;}
/**
* <p>The frame rate of the input file. If you want Elastic Transcoder to
* automatically detect the frame rate of the input file, specify
* <code>auto</code>. If you want to specify the frame rate for the input file,
* enter one of the following values: </p> <p> <code>10</code>, <code>15</code>,
* <code>23.97</code>, <code>24</code>, <code>25</code>, <code>29.97</code>,
* <code>30</code>, <code>60</code> </p> <p>If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the frame
* rate.</p>
*/
inline JobInput& WithFrameRate(const char* value) { SetFrameRate(value); return *this;}
/**
* <p>This value must be <code>auto</code>, which causes Elastic Transcoder to
* automatically detect the resolution of the input file.</p>
*/
inline const Aws::String& GetResolution() const{ return m_resolution; }
/**
* <p>This value must be <code>auto</code>, which causes Elastic Transcoder to
* automatically detect the resolution of the input file.</p>
*/
inline bool ResolutionHasBeenSet() const { return m_resolutionHasBeenSet; }
/**
* <p>This value must be <code>auto</code>, which causes Elastic Transcoder to
* automatically detect the resolution of the input file.</p>
*/
inline void SetResolution(const Aws::String& value) { m_resolutionHasBeenSet = true; m_resolution = value; }
/**
* <p>This value must be <code>auto</code>, which causes Elastic Transcoder to
* automatically detect the resolution of the input file.</p>
*/
inline void SetResolution(Aws::String&& value) { m_resolutionHasBeenSet = true; m_resolution = std::move(value); }
/**
* <p>This value must be <code>auto</code>, which causes Elastic Transcoder to
* automatically detect the resolution of the input file.</p>
*/
inline void SetResolution(const char* value) { m_resolutionHasBeenSet = true; m_resolution.assign(value); }
/**
* <p>This value must be <code>auto</code>, which causes Elastic Transcoder to
* automatically detect the resolution of the input file.</p>
*/
inline JobInput& WithResolution(const Aws::String& value) { SetResolution(value); return *this;}
/**
* <p>This value must be <code>auto</code>, which causes Elastic Transcoder to
* automatically detect the resolution of the input file.</p>
*/
inline JobInput& WithResolution(Aws::String&& value) { SetResolution(std::move(value)); return *this;}
/**
* <p>This value must be <code>auto</code>, which causes Elastic Transcoder to
* automatically detect the resolution of the input file.</p>
*/
inline JobInput& WithResolution(const char* value) { SetResolution(value); return *this;}
/**
* <p> The aspect ratio of the input file. If you want Elastic Transcoder to
* automatically detect the aspect ratio of the input file, specify
* <code>auto</code>. If you want to specify the aspect ratio for the output file,
* enter one of the following values: </p> <p> <code>1:1</code>, <code>4:3</code>,
* <code>3:2</code>, <code>16:9</code> </p> <p> If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the aspect
* ratio. </p>
*/
inline const Aws::String& GetAspectRatio() const{ return m_aspectRatio; }
/**
* <p> The aspect ratio of the input file. If you want Elastic Transcoder to
* automatically detect the aspect ratio of the input file, specify
* <code>auto</code>. If you want to specify the aspect ratio for the output file,
* enter one of the following values: </p> <p> <code>1:1</code>, <code>4:3</code>,
* <code>3:2</code>, <code>16:9</code> </p> <p> If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the aspect
* ratio. </p>
*/
inline bool AspectRatioHasBeenSet() const { return m_aspectRatioHasBeenSet; }
/**
* <p> The aspect ratio of the input file. If you want Elastic Transcoder to
* automatically detect the aspect ratio of the input file, specify
* <code>auto</code>. If you want to specify the aspect ratio for the output file,
* enter one of the following values: </p> <p> <code>1:1</code>, <code>4:3</code>,
* <code>3:2</code>, <code>16:9</code> </p> <p> If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the aspect
* ratio. </p>
*/
inline void SetAspectRatio(const Aws::String& value) { m_aspectRatioHasBeenSet = true; m_aspectRatio = value; }
/**
* <p> The aspect ratio of the input file. If you want Elastic Transcoder to
* automatically detect the aspect ratio of the input file, specify
* <code>auto</code>. If you want to specify the aspect ratio for the output file,
* enter one of the following values: </p> <p> <code>1:1</code>, <code>4:3</code>,
* <code>3:2</code>, <code>16:9</code> </p> <p> If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the aspect
* ratio. </p>
*/
inline void SetAspectRatio(Aws::String&& value) { m_aspectRatioHasBeenSet = true; m_aspectRatio = std::move(value); }
/**
* <p> The aspect ratio of the input file. If you want Elastic Transcoder to
* automatically detect the aspect ratio of the input file, specify
* <code>auto</code>. If you want to specify the aspect ratio for the output file,
* enter one of the following values: </p> <p> <code>1:1</code>, <code>4:3</code>,
* <code>3:2</code>, <code>16:9</code> </p> <p> If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the aspect
* ratio. </p>
*/
inline void SetAspectRatio(const char* value) { m_aspectRatioHasBeenSet = true; m_aspectRatio.assign(value); }
/**
* <p> The aspect ratio of the input file. If you want Elastic Transcoder to
* automatically detect the aspect ratio of the input file, specify
* <code>auto</code>. If you want to specify the aspect ratio for the output file,
* enter one of the following values: </p> <p> <code>1:1</code>, <code>4:3</code>,
* <code>3:2</code>, <code>16:9</code> </p> <p> If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the aspect
* ratio. </p>
*/
inline JobInput& WithAspectRatio(const Aws::String& value) { SetAspectRatio(value); return *this;}
/**
* <p> The aspect ratio of the input file. If you want Elastic Transcoder to
* automatically detect the aspect ratio of the input file, specify
* <code>auto</code>. If you want to specify the aspect ratio for the output file,
* enter one of the following values: </p> <p> <code>1:1</code>, <code>4:3</code>,
* <code>3:2</code>, <code>16:9</code> </p> <p> If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the aspect
* ratio. </p>
*/
inline JobInput& WithAspectRatio(Aws::String&& value) { SetAspectRatio(std::move(value)); return *this;}
/**
* <p> The aspect ratio of the input file. If you want Elastic Transcoder to
* automatically detect the aspect ratio of the input file, specify
* <code>auto</code>. If you want to specify the aspect ratio for the output file,
* enter one of the following values: </p> <p> <code>1:1</code>, <code>4:3</code>,
* <code>3:2</code>, <code>16:9</code> </p> <p> If you specify a value other than
* <code>auto</code>, Elastic Transcoder disables automatic detection of the aspect
* ratio. </p>
*/
inline JobInput& WithAspectRatio(const char* value) { SetAspectRatio(value); return *this;}
/**
* <p>Whether the input file is interlaced. If you want Elastic Transcoder to
* automatically detect whether the input file is interlaced, specify
* <code>auto</code>. If you want to specify whether the input file is interlaced,
* enter one of the following values:</p> <p> <code>true</code>, <code>false</code>
* </p> <p>If you specify a value other than <code>auto</code>, Elastic Transcoder
* disables automatic detection of interlacing.</p>
*/
inline const Aws::String& GetInterlaced() const{ return m_interlaced; }
/**
* <p>Whether the input file is interlaced. If you want Elastic Transcoder to
* automatically detect whether the input file is interlaced, specify
* <code>auto</code>. If you want to specify whether the input file is interlaced,
* enter one of the following values:</p> <p> <code>true</code>, <code>false</code>
* </p> <p>If you specify a value other than <code>auto</code>, Elastic Transcoder
* disables automatic detection of interlacing.</p>
*/
inline bool InterlacedHasBeenSet() const { return m_interlacedHasBeenSet; }
/**
* <p>Whether the input file is interlaced. If you want Elastic Transcoder to
* automatically detect whether the input file is interlaced, specify
* <code>auto</code>. If you want to specify whether the input file is interlaced,
* enter one of the following values:</p> <p> <code>true</code>, <code>false</code>
* </p> <p>If you specify a value other than <code>auto</code>, Elastic Transcoder
* disables automatic detection of interlacing.</p>
*/
inline void SetInterlaced(const Aws::String& value) { m_interlacedHasBeenSet = true; m_interlaced = value; }
/**
* <p>Whether the input file is interlaced. If you want Elastic Transcoder to
* automatically detect whether the input file is interlaced, specify
* <code>auto</code>. If you want to specify whether the input file is interlaced,
* enter one of the following values:</p> <p> <code>true</code>, <code>false</code>
* </p> <p>If you specify a value other than <code>auto</code>, Elastic Transcoder
* disables automatic detection of interlacing.</p>
*/
inline void SetInterlaced(Aws::String&& value) { m_interlacedHasBeenSet = true; m_interlaced = std::move(value); }
/**
* <p>Whether the input file is interlaced. If you want Elastic Transcoder to
* automatically detect whether the input file is interlaced, specify
* <code>auto</code>. If you want to specify whether the input file is interlaced,
* enter one of the following values:</p> <p> <code>true</code>, <code>false</code>
* </p> <p>If you specify a value other than <code>auto</code>, Elastic Transcoder
* disables automatic detection of interlacing.</p>
*/
inline void SetInterlaced(const char* value) { m_interlacedHasBeenSet = true; m_interlaced.assign(value); }
/**
* <p>Whether the input file is interlaced. If you want Elastic Transcoder to
* automatically detect whether the input file is interlaced, specify
* <code>auto</code>. If you want to specify whether the input file is interlaced,
* enter one of the following values:</p> <p> <code>true</code>, <code>false</code>
* </p> <p>If you specify a value other than <code>auto</code>, Elastic Transcoder
* disables automatic detection of interlacing.</p>
*/
inline JobInput& WithInterlaced(const Aws::String& value) { SetInterlaced(value); return *this;}
/**
* <p>Whether the input file is interlaced. If you want Elastic Transcoder to
* automatically detect whether the input file is interlaced, specify
* <code>auto</code>. If you want to specify whether the input file is interlaced,
* enter one of the following values:</p> <p> <code>true</code>, <code>false</code>
* </p> <p>If you specify a value other than <code>auto</code>, Elastic Transcoder
* disables automatic detection of interlacing.</p>
*/
inline JobInput& WithInterlaced(Aws::String&& value) { SetInterlaced(std::move(value)); return *this;}
/**
* <p>Whether the input file is interlaced. If you want Elastic Transcoder to
* automatically detect whether the input file is interlaced, specify
* <code>auto</code>. If you want to specify whether the input file is interlaced,
* enter one of the following values:</p> <p> <code>true</code>, <code>false</code>
* </p> <p>If you specify a value other than <code>auto</code>, Elastic Transcoder
* disables automatic detection of interlacing.</p>
*/
inline JobInput& WithInterlaced(const char* value) { SetInterlaced(value); return *this;}
/**
* <p>The container type for the input file. If you want Elastic Transcoder to
* automatically detect the container type of the input file, specify
* <code>auto</code>. If you want to specify the container type for the input file,
* enter one of the following values: </p> <p> <code>3gp</code>, <code>aac</code>,
* <code>asf</code>, <code>avi</code>, <code>divx</code>, <code>flv</code>,
* <code>m4a</code>, <code>mkv</code>, <code>mov</code>, <code>mp3</code>,
* <code>mp4</code>, <code>mpeg</code>, <code>mpeg-ps</code>, <code>mpeg-ts</code>,
* <code>mxf</code>, <code>ogg</code>, <code>vob</code>, <code>wav</code>,
* <code>webm</code> </p>
*/
inline const Aws::String& GetContainer() const{ return m_container; }
/**
* <p>The container type for the input file. If you want Elastic Transcoder to
* automatically detect the container type of the input file, specify
* <code>auto</code>. If you want to specify the container type for the input file,
* enter one of the following values: </p> <p> <code>3gp</code>, <code>aac</code>,
* <code>asf</code>, <code>avi</code>, <code>divx</code>, <code>flv</code>,
* <code>m4a</code>, <code>mkv</code>, <code>mov</code>, <code>mp3</code>,
* <code>mp4</code>, <code>mpeg</code>, <code>mpeg-ps</code>, <code>mpeg-ts</code>,
* <code>mxf</code>, <code>ogg</code>, <code>vob</code>, <code>wav</code>,
* <code>webm</code> </p>
*/
inline bool ContainerHasBeenSet() const { return m_containerHasBeenSet; }
/**
* <p>The container type for the input file. If you want Elastic Transcoder to
* automatically detect the container type of the input file, specify
* <code>auto</code>. If you want to specify the container type for the input file,
* enter one of the following values: </p> <p> <code>3gp</code>, <code>aac</code>,
* <code>asf</code>, <code>avi</code>, <code>divx</code>, <code>flv</code>,
* <code>m4a</code>, <code>mkv</code>, <code>mov</code>, <code>mp3</code>,
* <code>mp4</code>, <code>mpeg</code>, <code>mpeg-ps</code>, <code>mpeg-ts</code>,
* <code>mxf</code>, <code>ogg</code>, <code>vob</code>, <code>wav</code>,
* <code>webm</code> </p>
*/
inline void SetContainer(const Aws::String& value) { m_containerHasBeenSet = true; m_container = value; }
/**
* <p>The container type for the input file. If you want Elastic Transcoder to
* automatically detect the container type of the input file, specify
* <code>auto</code>. If you want to specify the container type for the input file,
* enter one of the following values: </p> <p> <code>3gp</code>, <code>aac</code>,
* <code>asf</code>, <code>avi</code>, <code>divx</code>, <code>flv</code>,
* <code>m4a</code>, <code>mkv</code>, <code>mov</code>, <code>mp3</code>,
* <code>mp4</code>, <code>mpeg</code>, <code>mpeg-ps</code>, <code>mpeg-ts</code>,
* <code>mxf</code>, <code>ogg</code>, <code>vob</code>, <code>wav</code>,
* <code>webm</code> </p>
*/
inline void SetContainer(Aws::String&& value) { m_containerHasBeenSet = true; m_container = std::move(value); }
/**
* <p>The container type for the input file. If you want Elastic Transcoder to
* automatically detect the container type of the input file, specify
* <code>auto</code>. If you want to specify the container type for the input file,
* enter one of the following values: </p> <p> <code>3gp</code>, <code>aac</code>,
* <code>asf</code>, <code>avi</code>, <code>divx</code>, <code>flv</code>,
* <code>m4a</code>, <code>mkv</code>, <code>mov</code>, <code>mp3</code>,
* <code>mp4</code>, <code>mpeg</code>, <code>mpeg-ps</code>, <code>mpeg-ts</code>,
* <code>mxf</code>, <code>ogg</code>, <code>vob</code>, <code>wav</code>,
* <code>webm</code> </p>
*/
inline void SetContainer(const char* value) { m_containerHasBeenSet = true; m_container.assign(value); }
/**
* <p>The container type for the input file. If you want Elastic Transcoder to
* automatically detect the container type of the input file, specify
* <code>auto</code>. If you want to specify the container type for the input file,
* enter one of the following values: </p> <p> <code>3gp</code>, <code>aac</code>,
* <code>asf</code>, <code>avi</code>, <code>divx</code>, <code>flv</code>,
* <code>m4a</code>, <code>mkv</code>, <code>mov</code>, <code>mp3</code>,
* <code>mp4</code>, <code>mpeg</code>, <code>mpeg-ps</code>, <code>mpeg-ts</code>,
* <code>mxf</code>, <code>ogg</code>, <code>vob</code>, <code>wav</code>,
* <code>webm</code> </p>
*/
inline JobInput& WithContainer(const Aws::String& value) { SetContainer(value); return *this;}
/**
* <p>The container type for the input file. If you want Elastic Transcoder to
* automatically detect the container type of the input file, specify
* <code>auto</code>. If you want to specify the container type for the input file,
* enter one of the following values: </p> <p> <code>3gp</code>, <code>aac</code>,
* <code>asf</code>, <code>avi</code>, <code>divx</code>, <code>flv</code>,
* <code>m4a</code>, <code>mkv</code>, <code>mov</code>, <code>mp3</code>,
* <code>mp4</code>, <code>mpeg</code>, <code>mpeg-ps</code>, <code>mpeg-ts</code>,
* <code>mxf</code>, <code>ogg</code>, <code>vob</code>, <code>wav</code>,
* <code>webm</code> </p>
*/
inline JobInput& WithContainer(Aws::String&& value) { SetContainer(std::move(value)); return *this;}
/**
* <p>The container type for the input file. If you want Elastic Transcoder to
* automatically detect the container type of the input file, specify
* <code>auto</code>. If you want to specify the container type for the input file,
* enter one of the following values: </p> <p> <code>3gp</code>, <code>aac</code>,
* <code>asf</code>, <code>avi</code>, <code>divx</code>, <code>flv</code>,
* <code>m4a</code>, <code>mkv</code>, <code>mov</code>, <code>mp3</code>,
* <code>mp4</code>, <code>mpeg</code>, <code>mpeg-ps</code>, <code>mpeg-ts</code>,
* <code>mxf</code>, <code>ogg</code>, <code>vob</code>, <code>wav</code>,
* <code>webm</code> </p>
*/
inline JobInput& WithContainer(const char* value) { SetContainer(value); return *this;}
/**
* <p>The encryption settings, if any, that are used for decrypting your input
* files. If your input file is encrypted, you must specify the mode that Elastic
* Transcoder uses to decrypt your file.</p>
*/
inline const Encryption& GetEncryption() const{ return m_encryption; }
/**
* <p>The encryption settings, if any, that are used for decrypting your input
* files. If your input file is encrypted, you must specify the mode that Elastic
* Transcoder uses to decrypt your file.</p>
*/
inline bool EncryptionHasBeenSet() const { return m_encryptionHasBeenSet; }
/**
* <p>The encryption settings, if any, that are used for decrypting your input
* files. If your input file is encrypted, you must specify the mode that Elastic
* Transcoder uses to decrypt your file.</p>
*/
inline void SetEncryption(const Encryption& value) { m_encryptionHasBeenSet = true; m_encryption = value; }
/**
* <p>The encryption settings, if any, that are used for decrypting your input
* files. If your input file is encrypted, you must specify the mode that Elastic
* Transcoder uses to decrypt your file.</p>
*/
inline void SetEncryption(Encryption&& value) { m_encryptionHasBeenSet = true; m_encryption = std::move(value); }
/**
* <p>The encryption settings, if any, that are used for decrypting your input
* files. If your input file is encrypted, you must specify the mode that Elastic
* Transcoder uses to decrypt your file.</p>
*/
inline JobInput& WithEncryption(const Encryption& value) { SetEncryption(value); return *this;}
/**
* <p>The encryption settings, if any, that are used for decrypting your input
* files. If your input file is encrypted, you must specify the mode that Elastic
* Transcoder uses to decrypt your file.</p>
*/
inline JobInput& WithEncryption(Encryption&& value) { SetEncryption(std::move(value)); return *this;}
/**
* <p>Settings for clipping an input. Each input can have different clip
* settings.</p>
*/
inline const TimeSpan& GetTimeSpan() const{ return m_timeSpan; }
/**
* <p>Settings for clipping an input. Each input can have different clip
* settings.</p>
*/
inline bool TimeSpanHasBeenSet() const { return m_timeSpanHasBeenSet; }
/**
* <p>Settings for clipping an input. Each input can have different clip
* settings.</p>
*/
inline void SetTimeSpan(const TimeSpan& value) { m_timeSpanHasBeenSet = true; m_timeSpan = value; }
/**
* <p>Settings for clipping an input. Each input can have different clip
* settings.</p>
*/
inline void SetTimeSpan(TimeSpan&& value) { m_timeSpanHasBeenSet = true; m_timeSpan = std::move(value); }
/**
* <p>Settings for clipping an input. Each input can have different clip
* settings.</p>
*/
inline JobInput& WithTimeSpan(const TimeSpan& value) { SetTimeSpan(value); return *this;}
/**
* <p>Settings for clipping an input. Each input can have different clip
* settings.</p>
*/
inline JobInput& WithTimeSpan(TimeSpan&& value) { SetTimeSpan(std::move(value)); return *this;}
/**
* <p>You can configure Elastic Transcoder to transcode captions, or subtitles,
* from one format to another. All captions must be in UTF-8. Elastic Transcoder
* supports two types of captions:</p> <ul> <li> <p> <b>Embedded:</b> Embedded
* captions are included in the same file as the audio and video. Elastic
* Transcoder supports only one embedded caption per language, to a maximum of 300
* embedded captions per file.</p> <p>Valid input values include: <code>CEA-608
* (EIA-608</code>, first non-empty channel only), <code>CEA-708 (EIA-708</code>,
* first non-empty channel only), and <code>mov-text</code> </p> <p>Valid outputs
* include: <code>mov-text</code> </p> <p>Elastic Transcoder supports a maximum of
* one embedded format per output.</p> </li> <li> <p> <b>Sidecar:</b> Sidecar
* captions are kept in a separate metadata file from the audio and video data.
* Sidecar captions require a player that is capable of understanding the
* relationship between the video file and the sidecar file. Elastic Transcoder
* supports only one sidecar caption per language, to a maximum of 20 sidecar
* captions per file.</p> <p>Valid input values include: <code>dfxp</code> (first
* div element only), <code>ebu-tt</code>, <code>scc</code>, <code>smpt</code>,
* <code>srt</code>, <code>ttml</code> (first div element only), and
* <code>webvtt</code> </p> <p>Valid outputs include: <code>dfxp</code> (first div
* element only), <code>scc</code>, <code>srt</code>, and <code>webvtt</code>.</p>
* </li> </ul> <p>If you want ttml or smpte-tt compatible captions, specify dfxp as
* your output format.</p> <p>Elastic Transcoder does not support OCR (Optical
* Character Recognition), does not accept pictures as a valid input for captions,
* and is not available for audio-only transcoding. Elastic Transcoder does not
* preserve text formatting (for example, italics) during the transcoding
* process.</p> <p>To remove captions or leave the captions empty, set
* <code>Captions</code> to null. To pass through existing captions unchanged, set
* the <code>MergePolicy</code> to <code>MergeRetain</code>, and pass in a null
* <code>CaptionSources</code> array.</p> <p>For more information on embedded
* files, see the Subtitles Wikipedia page.</p> <p>For more information on sidecar
* files, see the Extensible Metadata Platform and Sidecar file Wikipedia
* pages.</p>
*/
inline const InputCaptions& GetInputCaptions() const{ return m_inputCaptions; }
/**
* <p>You can configure Elastic Transcoder to transcode captions, or subtitles,
* from one format to another. All captions must be in UTF-8. Elastic Transcoder
* supports two types of captions:</p> <ul> <li> <p> <b>Embedded:</b> Embedded
* captions are included in the same file as the audio and video. Elastic
* Transcoder supports only one embedded caption per language, to a maximum of 300
* embedded captions per file.</p> <p>Valid input values include: <code>CEA-608
* (EIA-608</code>, first non-empty channel only), <code>CEA-708 (EIA-708</code>,
* first non-empty channel only), and <code>mov-text</code> </p> <p>Valid outputs
* include: <code>mov-text</code> </p> <p>Elastic Transcoder supports a maximum of
* one embedded format per output.</p> </li> <li> <p> <b>Sidecar:</b> Sidecar
* captions are kept in a separate metadata file from the audio and video data.
* Sidecar captions require a player that is capable of understanding the
* relationship between the video file and the sidecar file. Elastic Transcoder
* supports only one sidecar caption per language, to a maximum of 20 sidecar
* captions per file.</p> <p>Valid input values include: <code>dfxp</code> (first
* div element only), <code>ebu-tt</code>, <code>scc</code>, <code>smpt</code>,
* <code>srt</code>, <code>ttml</code> (first div element only), and
* <code>webvtt</code> </p> <p>Valid outputs include: <code>dfxp</code> (first div
* element only), <code>scc</code>, <code>srt</code>, and <code>webvtt</code>.</p>
* </li> </ul> <p>If you want ttml or smpte-tt compatible captions, specify dfxp as
* your output format.</p> <p>Elastic Transcoder does not support OCR (Optical
* Character Recognition), does not accept pictures as a valid input for captions,
* and is not available for audio-only transcoding. Elastic Transcoder does not
* preserve text formatting (for example, italics) during the transcoding
* process.</p> <p>To remove captions or leave the captions empty, set
* <code>Captions</code> to null. To pass through existing captions unchanged, set
* the <code>MergePolicy</code> to <code>MergeRetain</code>, and pass in a null
* <code>CaptionSources</code> array.</p> <p>For more information on embedded
* files, see the Subtitles Wikipedia page.</p> <p>For more information on sidecar
* files, see the Extensible Metadata Platform and Sidecar file Wikipedia
* pages.</p>
*/
inline bool InputCaptionsHasBeenSet() const { return m_inputCaptionsHasBeenSet; }
/**
* <p>You can configure Elastic Transcoder to transcode captions, or subtitles,
* from one format to another. All captions must be in UTF-8. Elastic Transcoder
* supports two types of captions:</p> <ul> <li> <p> <b>Embedded:</b> Embedded
* captions are included in the same file as the audio and video. Elastic
* Transcoder supports only one embedded caption per language, to a maximum of 300
* embedded captions per file.</p> <p>Valid input values include: <code>CEA-608
* (EIA-608</code>, first non-empty channel only), <code>CEA-708 (EIA-708</code>,
* first non-empty channel only), and <code>mov-text</code> </p> <p>Valid outputs
* include: <code>mov-text</code> </p> <p>Elastic Transcoder supports a maximum of
* one embedded format per output.</p> </li> <li> <p> <b>Sidecar:</b> Sidecar
* captions are kept in a separate metadata file from the audio and video data.
* Sidecar captions require a player that is capable of understanding the
* relationship between the video file and the sidecar file. Elastic Transcoder
* supports only one sidecar caption per language, to a maximum of 20 sidecar
* captions per file.</p> <p>Valid input values include: <code>dfxp</code> (first
* div element only), <code>ebu-tt</code>, <code>scc</code>, <code>smpt</code>,
* <code>srt</code>, <code>ttml</code> (first div element only), and
* <code>webvtt</code> </p> <p>Valid outputs include: <code>dfxp</code> (first div
* element only), <code>scc</code>, <code>srt</code>, and <code>webvtt</code>.</p>
* </li> </ul> <p>If you want ttml or smpte-tt compatible captions, specify dfxp as
* your output format.</p> <p>Elastic Transcoder does not support OCR (Optical
* Character Recognition), does not accept pictures as a valid input for captions,
* and is not available for audio-only transcoding. Elastic Transcoder does not
* preserve text formatting (for example, italics) during the transcoding
* process.</p> <p>To remove captions or leave the captions empty, set
* <code>Captions</code> to null. To pass through existing captions unchanged, set
* the <code>MergePolicy</code> to <code>MergeRetain</code>, and pass in a null
* <code>CaptionSources</code> array.</p> <p>For more information on embedded
* files, see the Subtitles Wikipedia page.</p> <p>For more information on sidecar
* files, see the Extensible Metadata Platform and Sidecar file Wikipedia
* pages.</p>
*/
inline void SetInputCaptions(const InputCaptions& value) { m_inputCaptionsHasBeenSet = true; m_inputCaptions = value; }
/**
* <p>You can configure Elastic Transcoder to transcode captions, or subtitles,
* from one format to another. All captions must be in UTF-8. Elastic Transcoder
* supports two types of captions:</p> <ul> <li> <p> <b>Embedded:</b> Embedded
* captions are included in the same file as the audio and video. Elastic
* Transcoder supports only one embedded caption per language, to a maximum of 300
* embedded captions per file.</p> <p>Valid input values include: <code>CEA-608
* (EIA-608</code>, first non-empty channel only), <code>CEA-708 (EIA-708</code>,
* first non-empty channel only), and <code>mov-text</code> </p> <p>Valid outputs
* include: <code>mov-text</code> </p> <p>Elastic Transcoder supports a maximum of
* one embedded format per output.</p> </li> <li> <p> <b>Sidecar:</b> Sidecar
* captions are kept in a separate metadata file from the audio and video data.
* Sidecar captions require a player that is capable of understanding the
* relationship between the video file and the sidecar file. Elastic Transcoder
* supports only one sidecar caption per language, to a maximum of 20 sidecar
* captions per file.</p> <p>Valid input values include: <code>dfxp</code> (first
* div element only), <code>ebu-tt</code>, <code>scc</code>, <code>smpt</code>,
* <code>srt</code>, <code>ttml</code> (first div element only), and
* <code>webvtt</code> </p> <p>Valid outputs include: <code>dfxp</code> (first div
* element only), <code>scc</code>, <code>srt</code>, and <code>webvtt</code>.</p>
* </li> </ul> <p>If you want ttml or smpte-tt compatible captions, specify dfxp as
* your output format.</p> <p>Elastic Transcoder does not support OCR (Optical
* Character Recognition), does not accept pictures as a valid input for captions,
* and is not available for audio-only transcoding. Elastic Transcoder does not
* preserve text formatting (for example, italics) during the transcoding
* process.</p> <p>To remove captions or leave the captions empty, set
* <code>Captions</code> to null. To pass through existing captions unchanged, set
* the <code>MergePolicy</code> to <code>MergeRetain</code>, and pass in a null
* <code>CaptionSources</code> array.</p> <p>For more information on embedded
* files, see the Subtitles Wikipedia page.</p> <p>For more information on sidecar
* files, see the Extensible Metadata Platform and Sidecar file Wikipedia
* pages.</p>
*/
inline void SetInputCaptions(InputCaptions&& value) { m_inputCaptionsHasBeenSet = true; m_inputCaptions = std::move(value); }
/**
* <p>You can configure Elastic Transcoder to transcode captions, or subtitles,
* from one format to another. All captions must be in UTF-8. Elastic Transcoder
* supports two types of captions:</p> <ul> <li> <p> <b>Embedded:</b> Embedded
* captions are included in the same file as the audio and video. Elastic
* Transcoder supports only one embedded caption per language, to a maximum of 300
* embedded captions per file.</p> <p>Valid input values include: <code>CEA-608
* (EIA-608</code>, first non-empty channel only), <code>CEA-708 (EIA-708</code>,
* first non-empty channel only), and <code>mov-text</code> </p> <p>Valid outputs
* include: <code>mov-text</code> </p> <p>Elastic Transcoder supports a maximum of
* one embedded format per output.</p> </li> <li> <p> <b>Sidecar:</b> Sidecar
* captions are kept in a separate metadata file from the audio and video data.
* Sidecar captions require a player that is capable of understanding the
* relationship between the video file and the sidecar file. Elastic Transcoder
* supports only one sidecar caption per language, to a maximum of 20 sidecar
* captions per file.</p> <p>Valid input values include: <code>dfxp</code> (first
* div element only), <code>ebu-tt</code>, <code>scc</code>, <code>smpt</code>,
* <code>srt</code>, <code>ttml</code> (first div element only), and
* <code>webvtt</code> </p> <p>Valid outputs include: <code>dfxp</code> (first div
* element only), <code>scc</code>, <code>srt</code>, and <code>webvtt</code>.</p>
* </li> </ul> <p>If you want ttml or smpte-tt compatible captions, specify dfxp as
* your output format.</p> <p>Elastic Transcoder does not support OCR (Optical
* Character Recognition), does not accept pictures as a valid input for captions,
* and is not available for audio-only transcoding. Elastic Transcoder does not
* preserve text formatting (for example, italics) during the transcoding
* process.</p> <p>To remove captions or leave the captions empty, set
* <code>Captions</code> to null. To pass through existing captions unchanged, set
* the <code>MergePolicy</code> to <code>MergeRetain</code>, and pass in a null
* <code>CaptionSources</code> array.</p> <p>For more information on embedded
* files, see the Subtitles Wikipedia page.</p> <p>For more information on sidecar
* files, see the Extensible Metadata Platform and Sidecar file Wikipedia
* pages.</p>
*/
inline JobInput& WithInputCaptions(const InputCaptions& value) { SetInputCaptions(value); return *this;}
/**
* <p>You can configure Elastic Transcoder to transcode captions, or subtitles,
* from one format to another. All captions must be in UTF-8. Elastic Transcoder
* supports two types of captions:</p> <ul> <li> <p> <b>Embedded:</b> Embedded
* captions are included in the same file as the audio and video. Elastic
* Transcoder supports only one embedded caption per language, to a maximum of 300
* embedded captions per file.</p> <p>Valid input values include: <code>CEA-608
* (EIA-608</code>, first non-empty channel only), <code>CEA-708 (EIA-708</code>,
* first non-empty channel only), and <code>mov-text</code> </p> <p>Valid outputs
* include: <code>mov-text</code> </p> <p>Elastic Transcoder supports a maximum of
* one embedded format per output.</p> </li> <li> <p> <b>Sidecar:</b> Sidecar
* captions are kept in a separate metadata file from the audio and video data.
* Sidecar captions require a player that is capable of understanding the
* relationship between the video file and the sidecar file. Elastic Transcoder
* supports only one sidecar caption per language, to a maximum of 20 sidecar
* captions per file.</p> <p>Valid input values include: <code>dfxp</code> (first
* div element only), <code>ebu-tt</code>, <code>scc</code>, <code>smpt</code>,
* <code>srt</code>, <code>ttml</code> (first div element only), and
* <code>webvtt</code> </p> <p>Valid outputs include: <code>dfxp</code> (first div
* element only), <code>scc</code>, <code>srt</code>, and <code>webvtt</code>.</p>
* </li> </ul> <p>If you want ttml or smpte-tt compatible captions, specify dfxp as
* your output format.</p> <p>Elastic Transcoder does not support OCR (Optical
* Character Recognition), does not accept pictures as a valid input for captions,
* and is not available for audio-only transcoding. Elastic Transcoder does not
* preserve text formatting (for example, italics) during the transcoding
* process.</p> <p>To remove captions or leave the captions empty, set
* <code>Captions</code> to null. To pass through existing captions unchanged, set
* the <code>MergePolicy</code> to <code>MergeRetain</code>, and pass in a null
* <code>CaptionSources</code> array.</p> <p>For more information on embedded
* files, see the Subtitles Wikipedia page.</p> <p>For more information on sidecar
* files, see the Extensible Metadata Platform and Sidecar file Wikipedia
* pages.</p>
*/
inline JobInput& WithInputCaptions(InputCaptions&& value) { SetInputCaptions(std::move(value)); return *this;}
/**
* <p>The detected properties of the input file.</p>
*/
inline const DetectedProperties& GetDetectedProperties() const{ return m_detectedProperties; }
/**
* <p>The detected properties of the input file.</p>
*/
inline bool DetectedPropertiesHasBeenSet() const { return m_detectedPropertiesHasBeenSet; }
/**
* <p>The detected properties of the input file.</p>
*/
inline void SetDetectedProperties(const DetectedProperties& value) { m_detectedPropertiesHasBeenSet = true; m_detectedProperties = value; }
/**
* <p>The detected properties of the input file.</p>
*/
inline void SetDetectedProperties(DetectedProperties&& value) { m_detectedPropertiesHasBeenSet = true; m_detectedProperties = std::move(value); }
/**
* <p>The detected properties of the input file.</p>
*/
inline JobInput& WithDetectedProperties(const DetectedProperties& value) { SetDetectedProperties(value); return *this;}
/**
* <p>The detected properties of the input file.</p>
*/
inline JobInput& WithDetectedProperties(DetectedProperties&& value) { SetDetectedProperties(std::move(value)); return *this;}
private:
Aws::String m_key;
bool m_keyHasBeenSet;
Aws::String m_frameRate;
bool m_frameRateHasBeenSet;
Aws::String m_resolution;
bool m_resolutionHasBeenSet;
Aws::String m_aspectRatio;
bool m_aspectRatioHasBeenSet;
Aws::String m_interlaced;
bool m_interlacedHasBeenSet;
Aws::String m_container;
bool m_containerHasBeenSet;
Encryption m_encryption;
bool m_encryptionHasBeenSet;
TimeSpan m_timeSpan;
bool m_timeSpanHasBeenSet;
InputCaptions m_inputCaptions;
bool m_inputCaptionsHasBeenSet;
DetectedProperties m_detectedProperties;
bool m_detectedPropertiesHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,247 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/elastictranscoder/model/Encryption.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>Watermarks can be in .png or .jpg format. If you want to display a watermark
* that is not rectangular, use the .png format, which supports
* transparency.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/JobWatermark">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API JobWatermark
{
public:
JobWatermark();
JobWatermark(Aws::Utils::Json::JsonView jsonValue);
JobWatermark& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The ID of the watermark settings that Elastic Transcoder uses to add
* watermarks to the video during transcoding. The settings are in the preset
* specified by Preset for the current output. In that preset, the value of
* Watermarks Id tells Elastic Transcoder which settings to use.</p>
*/
inline const Aws::String& GetPresetWatermarkId() const{ return m_presetWatermarkId; }
/**
* <p>The ID of the watermark settings that Elastic Transcoder uses to add
* watermarks to the video during transcoding. The settings are in the preset
* specified by Preset for the current output. In that preset, the value of
* Watermarks Id tells Elastic Transcoder which settings to use.</p>
*/
inline bool PresetWatermarkIdHasBeenSet() const { return m_presetWatermarkIdHasBeenSet; }
/**
* <p>The ID of the watermark settings that Elastic Transcoder uses to add
* watermarks to the video during transcoding. The settings are in the preset
* specified by Preset for the current output. In that preset, the value of
* Watermarks Id tells Elastic Transcoder which settings to use.</p>
*/
inline void SetPresetWatermarkId(const Aws::String& value) { m_presetWatermarkIdHasBeenSet = true; m_presetWatermarkId = value; }
/**
* <p>The ID of the watermark settings that Elastic Transcoder uses to add
* watermarks to the video during transcoding. The settings are in the preset
* specified by Preset for the current output. In that preset, the value of
* Watermarks Id tells Elastic Transcoder which settings to use.</p>
*/
inline void SetPresetWatermarkId(Aws::String&& value) { m_presetWatermarkIdHasBeenSet = true; m_presetWatermarkId = std::move(value); }
/**
* <p>The ID of the watermark settings that Elastic Transcoder uses to add
* watermarks to the video during transcoding. The settings are in the preset
* specified by Preset for the current output. In that preset, the value of
* Watermarks Id tells Elastic Transcoder which settings to use.</p>
*/
inline void SetPresetWatermarkId(const char* value) { m_presetWatermarkIdHasBeenSet = true; m_presetWatermarkId.assign(value); }
/**
* <p>The ID of the watermark settings that Elastic Transcoder uses to add
* watermarks to the video during transcoding. The settings are in the preset
* specified by Preset for the current output. In that preset, the value of
* Watermarks Id tells Elastic Transcoder which settings to use.</p>
*/
inline JobWatermark& WithPresetWatermarkId(const Aws::String& value) { SetPresetWatermarkId(value); return *this;}
/**
* <p>The ID of the watermark settings that Elastic Transcoder uses to add
* watermarks to the video during transcoding. The settings are in the preset
* specified by Preset for the current output. In that preset, the value of
* Watermarks Id tells Elastic Transcoder which settings to use.</p>
*/
inline JobWatermark& WithPresetWatermarkId(Aws::String&& value) { SetPresetWatermarkId(std::move(value)); return *this;}
/**
* <p>The ID of the watermark settings that Elastic Transcoder uses to add
* watermarks to the video during transcoding. The settings are in the preset
* specified by Preset for the current output. In that preset, the value of
* Watermarks Id tells Elastic Transcoder which settings to use.</p>
*/
inline JobWatermark& WithPresetWatermarkId(const char* value) { SetPresetWatermarkId(value); return *this;}
/**
* <p> The name of the .png or .jpg file that you want to use for the watermark. To
* determine which Amazon S3 bucket contains the specified file, Elastic Transcoder
* checks the pipeline specified by <code>Pipeline</code>; the <code>Input
* Bucket</code> object in that pipeline identifies the bucket.</p> <p> If the file
* name includes a prefix, for example, <b>logos/128x64.png</b>, include the prefix
* in the key. If the file isn't in the specified bucket, Elastic Transcoder
* returns an error. </p>
*/
inline const Aws::String& GetInputKey() const{ return m_inputKey; }
/**
* <p> The name of the .png or .jpg file that you want to use for the watermark. To
* determine which Amazon S3 bucket contains the specified file, Elastic Transcoder
* checks the pipeline specified by <code>Pipeline</code>; the <code>Input
* Bucket</code> object in that pipeline identifies the bucket.</p> <p> If the file
* name includes a prefix, for example, <b>logos/128x64.png</b>, include the prefix
* in the key. If the file isn't in the specified bucket, Elastic Transcoder
* returns an error. </p>
*/
inline bool InputKeyHasBeenSet() const { return m_inputKeyHasBeenSet; }
/**
* <p> The name of the .png or .jpg file that you want to use for the watermark. To
* determine which Amazon S3 bucket contains the specified file, Elastic Transcoder
* checks the pipeline specified by <code>Pipeline</code>; the <code>Input
* Bucket</code> object in that pipeline identifies the bucket.</p> <p> If the file
* name includes a prefix, for example, <b>logos/128x64.png</b>, include the prefix
* in the key. If the file isn't in the specified bucket, Elastic Transcoder
* returns an error. </p>
*/
inline void SetInputKey(const Aws::String& value) { m_inputKeyHasBeenSet = true; m_inputKey = value; }
/**
* <p> The name of the .png or .jpg file that you want to use for the watermark. To
* determine which Amazon S3 bucket contains the specified file, Elastic Transcoder
* checks the pipeline specified by <code>Pipeline</code>; the <code>Input
* Bucket</code> object in that pipeline identifies the bucket.</p> <p> If the file
* name includes a prefix, for example, <b>logos/128x64.png</b>, include the prefix
* in the key. If the file isn't in the specified bucket, Elastic Transcoder
* returns an error. </p>
*/
inline void SetInputKey(Aws::String&& value) { m_inputKeyHasBeenSet = true; m_inputKey = std::move(value); }
/**
* <p> The name of the .png or .jpg file that you want to use for the watermark. To
* determine which Amazon S3 bucket contains the specified file, Elastic Transcoder
* checks the pipeline specified by <code>Pipeline</code>; the <code>Input
* Bucket</code> object in that pipeline identifies the bucket.</p> <p> If the file
* name includes a prefix, for example, <b>logos/128x64.png</b>, include the prefix
* in the key. If the file isn't in the specified bucket, Elastic Transcoder
* returns an error. </p>
*/
inline void SetInputKey(const char* value) { m_inputKeyHasBeenSet = true; m_inputKey.assign(value); }
/**
* <p> The name of the .png or .jpg file that you want to use for the watermark. To
* determine which Amazon S3 bucket contains the specified file, Elastic Transcoder
* checks the pipeline specified by <code>Pipeline</code>; the <code>Input
* Bucket</code> object in that pipeline identifies the bucket.</p> <p> If the file
* name includes a prefix, for example, <b>logos/128x64.png</b>, include the prefix
* in the key. If the file isn't in the specified bucket, Elastic Transcoder
* returns an error. </p>
*/
inline JobWatermark& WithInputKey(const Aws::String& value) { SetInputKey(value); return *this;}
/**
* <p> The name of the .png or .jpg file that you want to use for the watermark. To
* determine which Amazon S3 bucket contains the specified file, Elastic Transcoder
* checks the pipeline specified by <code>Pipeline</code>; the <code>Input
* Bucket</code> object in that pipeline identifies the bucket.</p> <p> If the file
* name includes a prefix, for example, <b>logos/128x64.png</b>, include the prefix
* in the key. If the file isn't in the specified bucket, Elastic Transcoder
* returns an error. </p>
*/
inline JobWatermark& WithInputKey(Aws::String&& value) { SetInputKey(std::move(value)); return *this;}
/**
* <p> The name of the .png or .jpg file that you want to use for the watermark. To
* determine which Amazon S3 bucket contains the specified file, Elastic Transcoder
* checks the pipeline specified by <code>Pipeline</code>; the <code>Input
* Bucket</code> object in that pipeline identifies the bucket.</p> <p> If the file
* name includes a prefix, for example, <b>logos/128x64.png</b>, include the prefix
* in the key. If the file isn't in the specified bucket, Elastic Transcoder
* returns an error. </p>
*/
inline JobWatermark& WithInputKey(const char* value) { SetInputKey(value); return *this;}
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your watermarks.</p>
*/
inline const Encryption& GetEncryption() const{ return m_encryption; }
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your watermarks.</p>
*/
inline bool EncryptionHasBeenSet() const { return m_encryptionHasBeenSet; }
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your watermarks.</p>
*/
inline void SetEncryption(const Encryption& value) { m_encryptionHasBeenSet = true; m_encryption = value; }
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your watermarks.</p>
*/
inline void SetEncryption(Encryption&& value) { m_encryptionHasBeenSet = true; m_encryption = std::move(value); }
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your watermarks.</p>
*/
inline JobWatermark& WithEncryption(const Encryption& value) { SetEncryption(value); return *this;}
/**
* <p>The encryption settings, if any, that you want Elastic Transcoder to apply to
* your watermarks.</p>
*/
inline JobWatermark& WithEncryption(Encryption&& value) { SetEncryption(std::move(value)); return *this;}
private:
Aws::String m_presetWatermarkId;
bool m_presetWatermarkIdHasBeenSet;
Aws::String m_inputKey;
bool m_inputKeyHasBeenSet;
Encryption m_encryption;
bool m_encryptionHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,213 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/ElasticTranscoderRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Http
{
class URI;
} //namespace Http
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>ListJobsByPipelineRequest</code> structure.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListJobsByPipelineRequest">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API ListJobsByPipelineRequest : public ElasticTranscoderRequest
{
public:
ListJobsByPipelineRequest();
// 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 "ListJobsByPipeline"; }
Aws::String SerializePayload() const override;
void AddQueryStringParameters(Aws::Http::URI& uri) const override;
/**
* <p>The ID of the pipeline for which you want to get job information.</p>
*/
inline const Aws::String& GetPipelineId() const{ return m_pipelineId; }
/**
* <p>The ID of the pipeline for which you want to get job information.</p>
*/
inline bool PipelineIdHasBeenSet() const { return m_pipelineIdHasBeenSet; }
/**
* <p>The ID of the pipeline for which you want to get job information.</p>
*/
inline void SetPipelineId(const Aws::String& value) { m_pipelineIdHasBeenSet = true; m_pipelineId = value; }
/**
* <p>The ID of the pipeline for which you want to get job information.</p>
*/
inline void SetPipelineId(Aws::String&& value) { m_pipelineIdHasBeenSet = true; m_pipelineId = std::move(value); }
/**
* <p>The ID of the pipeline for which you want to get job information.</p>
*/
inline void SetPipelineId(const char* value) { m_pipelineIdHasBeenSet = true; m_pipelineId.assign(value); }
/**
* <p>The ID of the pipeline for which you want to get job information.</p>
*/
inline ListJobsByPipelineRequest& WithPipelineId(const Aws::String& value) { SetPipelineId(value); return *this;}
/**
* <p>The ID of the pipeline for which you want to get job information.</p>
*/
inline ListJobsByPipelineRequest& WithPipelineId(Aws::String&& value) { SetPipelineId(std::move(value)); return *this;}
/**
* <p>The ID of the pipeline for which you want to get job information.</p>
*/
inline ListJobsByPipelineRequest& WithPipelineId(const char* value) { SetPipelineId(value); return *this;}
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline const Aws::String& GetAscending() const{ return m_ascending; }
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline bool AscendingHasBeenSet() const { return m_ascendingHasBeenSet; }
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline void SetAscending(const Aws::String& value) { m_ascendingHasBeenSet = true; m_ascending = value; }
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline void SetAscending(Aws::String&& value) { m_ascendingHasBeenSet = true; m_ascending = std::move(value); }
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline void SetAscending(const char* value) { m_ascendingHasBeenSet = true; m_ascending.assign(value); }
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline ListJobsByPipelineRequest& WithAscending(const Aws::String& value) { SetAscending(value); return *this;}
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline ListJobsByPipelineRequest& WithAscending(Aws::String&& value) { SetAscending(std::move(value)); return *this;}
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline ListJobsByPipelineRequest& WithAscending(const char* value) { SetAscending(value); return *this;}
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline const Aws::String& GetPageToken() const{ return m_pageToken; }
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline bool PageTokenHasBeenSet() const { return m_pageTokenHasBeenSet; }
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline void SetPageToken(const Aws::String& value) { m_pageTokenHasBeenSet = true; m_pageToken = value; }
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline void SetPageToken(Aws::String&& value) { m_pageTokenHasBeenSet = true; m_pageToken = std::move(value); }
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline void SetPageToken(const char* value) { m_pageTokenHasBeenSet = true; m_pageToken.assign(value); }
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline ListJobsByPipelineRequest& WithPageToken(const Aws::String& value) { SetPageToken(value); return *this;}
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline ListJobsByPipelineRequest& WithPageToken(Aws::String&& value) { SetPageToken(std::move(value)); return *this;}
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline ListJobsByPipelineRequest& WithPageToken(const char* value) { SetPageToken(value); return *this;}
private:
Aws::String m_pipelineId;
bool m_pipelineIdHasBeenSet;
Aws::String m_ascending;
bool m_ascendingHasBeenSet;
Aws::String m_pageToken;
bool m_pageTokenHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,144 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/elastictranscoder/model/Job.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>ListJobsByPipelineResponse</code> structure.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListJobsByPipelineResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API ListJobsByPipelineResult
{
public:
ListJobsByPipelineResult();
ListJobsByPipelineResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListJobsByPipelineResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array of <code>Job</code> objects that are in the specified pipeline.</p>
*/
inline const Aws::Vector<Job>& GetJobs() const{ return m_jobs; }
/**
* <p>An array of <code>Job</code> objects that are in the specified pipeline.</p>
*/
inline void SetJobs(const Aws::Vector<Job>& value) { m_jobs = value; }
/**
* <p>An array of <code>Job</code> objects that are in the specified pipeline.</p>
*/
inline void SetJobs(Aws::Vector<Job>&& value) { m_jobs = std::move(value); }
/**
* <p>An array of <code>Job</code> objects that are in the specified pipeline.</p>
*/
inline ListJobsByPipelineResult& WithJobs(const Aws::Vector<Job>& value) { SetJobs(value); return *this;}
/**
* <p>An array of <code>Job</code> objects that are in the specified pipeline.</p>
*/
inline ListJobsByPipelineResult& WithJobs(Aws::Vector<Job>&& value) { SetJobs(std::move(value)); return *this;}
/**
* <p>An array of <code>Job</code> objects that are in the specified pipeline.</p>
*/
inline ListJobsByPipelineResult& AddJobs(const Job& value) { m_jobs.push_back(value); return *this; }
/**
* <p>An array of <code>Job</code> objects that are in the specified pipeline.</p>
*/
inline ListJobsByPipelineResult& AddJobs(Job&& value) { m_jobs.push_back(std::move(value)); return *this; }
/**
* <p> A value that you use to access the second and subsequent pages of results,
* if any. When the jobs in the specified pipeline fit on one page or when you've
* reached the last page of results, the value of <code>NextPageToken</code> is
* <code>null</code>. </p>
*/
inline const Aws::String& GetNextPageToken() const{ return m_nextPageToken; }
/**
* <p> A value that you use to access the second and subsequent pages of results,
* if any. When the jobs in the specified pipeline fit on one page or when you've
* reached the last page of results, the value of <code>NextPageToken</code> is
* <code>null</code>. </p>
*/
inline void SetNextPageToken(const Aws::String& value) { m_nextPageToken = value; }
/**
* <p> A value that you use to access the second and subsequent pages of results,
* if any. When the jobs in the specified pipeline fit on one page or when you've
* reached the last page of results, the value of <code>NextPageToken</code> is
* <code>null</code>. </p>
*/
inline void SetNextPageToken(Aws::String&& value) { m_nextPageToken = std::move(value); }
/**
* <p> A value that you use to access the second and subsequent pages of results,
* if any. When the jobs in the specified pipeline fit on one page or when you've
* reached the last page of results, the value of <code>NextPageToken</code> is
* <code>null</code>. </p>
*/
inline void SetNextPageToken(const char* value) { m_nextPageToken.assign(value); }
/**
* <p> A value that you use to access the second and subsequent pages of results,
* if any. When the jobs in the specified pipeline fit on one page or when you've
* reached the last page of results, the value of <code>NextPageToken</code> is
* <code>null</code>. </p>
*/
inline ListJobsByPipelineResult& WithNextPageToken(const Aws::String& value) { SetNextPageToken(value); return *this;}
/**
* <p> A value that you use to access the second and subsequent pages of results,
* if any. When the jobs in the specified pipeline fit on one page or when you've
* reached the last page of results, the value of <code>NextPageToken</code> is
* <code>null</code>. </p>
*/
inline ListJobsByPipelineResult& WithNextPageToken(Aws::String&& value) { SetNextPageToken(std::move(value)); return *this;}
/**
* <p> A value that you use to access the second and subsequent pages of results,
* if any. When the jobs in the specified pipeline fit on one page or when you've
* reached the last page of results, the value of <code>NextPageToken</code> is
* <code>null</code>. </p>
*/
inline ListJobsByPipelineResult& WithNextPageToken(const char* value) { SetNextPageToken(value); return *this;}
private:
Aws::Vector<Job> m_jobs;
Aws::String m_nextPageToken;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,237 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/ElasticTranscoderRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Http
{
class URI;
} //namespace Http
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>ListJobsByStatusRequest</code> structure.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListJobsByStatusRequest">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API ListJobsByStatusRequest : public ElasticTranscoderRequest
{
public:
ListJobsByStatusRequest();
// 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 "ListJobsByStatus"; }
Aws::String SerializePayload() const override;
void AddQueryStringParameters(Aws::Http::URI& uri) const override;
/**
* <p>To get information about all of the jobs associated with the current AWS
* account that have a given status, specify the following status:
* <code>Submitted</code>, <code>Progressing</code>, <code>Complete</code>,
* <code>Canceled</code>, or <code>Error</code>.</p>
*/
inline const Aws::String& GetStatus() const{ return m_status; }
/**
* <p>To get information about all of the jobs associated with the current AWS
* account that have a given status, specify the following status:
* <code>Submitted</code>, <code>Progressing</code>, <code>Complete</code>,
* <code>Canceled</code>, or <code>Error</code>.</p>
*/
inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
/**
* <p>To get information about all of the jobs associated with the current AWS
* account that have a given status, specify the following status:
* <code>Submitted</code>, <code>Progressing</code>, <code>Complete</code>,
* <code>Canceled</code>, or <code>Error</code>.</p>
*/
inline void SetStatus(const Aws::String& value) { m_statusHasBeenSet = true; m_status = value; }
/**
* <p>To get information about all of the jobs associated with the current AWS
* account that have a given status, specify the following status:
* <code>Submitted</code>, <code>Progressing</code>, <code>Complete</code>,
* <code>Canceled</code>, or <code>Error</code>.</p>
*/
inline void SetStatus(Aws::String&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
/**
* <p>To get information about all of the jobs associated with the current AWS
* account that have a given status, specify the following status:
* <code>Submitted</code>, <code>Progressing</code>, <code>Complete</code>,
* <code>Canceled</code>, or <code>Error</code>.</p>
*/
inline void SetStatus(const char* value) { m_statusHasBeenSet = true; m_status.assign(value); }
/**
* <p>To get information about all of the jobs associated with the current AWS
* account that have a given status, specify the following status:
* <code>Submitted</code>, <code>Progressing</code>, <code>Complete</code>,
* <code>Canceled</code>, or <code>Error</code>.</p>
*/
inline ListJobsByStatusRequest& WithStatus(const Aws::String& value) { SetStatus(value); return *this;}
/**
* <p>To get information about all of the jobs associated with the current AWS
* account that have a given status, specify the following status:
* <code>Submitted</code>, <code>Progressing</code>, <code>Complete</code>,
* <code>Canceled</code>, or <code>Error</code>.</p>
*/
inline ListJobsByStatusRequest& WithStatus(Aws::String&& value) { SetStatus(std::move(value)); return *this;}
/**
* <p>To get information about all of the jobs associated with the current AWS
* account that have a given status, specify the following status:
* <code>Submitted</code>, <code>Progressing</code>, <code>Complete</code>,
* <code>Canceled</code>, or <code>Error</code>.</p>
*/
inline ListJobsByStatusRequest& WithStatus(const char* value) { SetStatus(value); return *this;}
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline const Aws::String& GetAscending() const{ return m_ascending; }
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline bool AscendingHasBeenSet() const { return m_ascendingHasBeenSet; }
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline void SetAscending(const Aws::String& value) { m_ascendingHasBeenSet = true; m_ascending = value; }
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline void SetAscending(Aws::String&& value) { m_ascendingHasBeenSet = true; m_ascending = std::move(value); }
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline void SetAscending(const char* value) { m_ascendingHasBeenSet = true; m_ascending.assign(value); }
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline ListJobsByStatusRequest& WithAscending(const Aws::String& value) { SetAscending(value); return *this;}
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline ListJobsByStatusRequest& WithAscending(Aws::String&& value) { SetAscending(std::move(value)); return *this;}
/**
* <p> To list jobs in chronological order by the date and time that they were
* submitted, enter <code>true</code>. To list jobs in reverse chronological order,
* enter <code>false</code>. </p>
*/
inline ListJobsByStatusRequest& WithAscending(const char* value) { SetAscending(value); return *this;}
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline const Aws::String& GetPageToken() const{ return m_pageToken; }
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline bool PageTokenHasBeenSet() const { return m_pageTokenHasBeenSet; }
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline void SetPageToken(const Aws::String& value) { m_pageTokenHasBeenSet = true; m_pageToken = value; }
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline void SetPageToken(Aws::String&& value) { m_pageTokenHasBeenSet = true; m_pageToken = std::move(value); }
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline void SetPageToken(const char* value) { m_pageTokenHasBeenSet = true; m_pageToken.assign(value); }
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline ListJobsByStatusRequest& WithPageToken(const Aws::String& value) { SetPageToken(value); return *this;}
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline ListJobsByStatusRequest& WithPageToken(Aws::String&& value) { SetPageToken(std::move(value)); return *this;}
/**
* <p> When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline ListJobsByStatusRequest& WithPageToken(const char* value) { SetPageToken(value); return *this;}
private:
Aws::String m_status;
bool m_statusHasBeenSet;
Aws::String m_ascending;
bool m_ascendingHasBeenSet;
Aws::String m_pageToken;
bool m_pageTokenHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,144 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/elastictranscoder/model/Job.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p> The <code>ListJobsByStatusResponse</code> structure. </p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListJobsByStatusResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API ListJobsByStatusResult
{
public:
ListJobsByStatusResult();
ListJobsByStatusResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListJobsByStatusResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array of <code>Job</code> objects that have the specified status.</p>
*/
inline const Aws::Vector<Job>& GetJobs() const{ return m_jobs; }
/**
* <p>An array of <code>Job</code> objects that have the specified status.</p>
*/
inline void SetJobs(const Aws::Vector<Job>& value) { m_jobs = value; }
/**
* <p>An array of <code>Job</code> objects that have the specified status.</p>
*/
inline void SetJobs(Aws::Vector<Job>&& value) { m_jobs = std::move(value); }
/**
* <p>An array of <code>Job</code> objects that have the specified status.</p>
*/
inline ListJobsByStatusResult& WithJobs(const Aws::Vector<Job>& value) { SetJobs(value); return *this;}
/**
* <p>An array of <code>Job</code> objects that have the specified status.</p>
*/
inline ListJobsByStatusResult& WithJobs(Aws::Vector<Job>&& value) { SetJobs(std::move(value)); return *this;}
/**
* <p>An array of <code>Job</code> objects that have the specified status.</p>
*/
inline ListJobsByStatusResult& AddJobs(const Job& value) { m_jobs.push_back(value); return *this; }
/**
* <p>An array of <code>Job</code> objects that have the specified status.</p>
*/
inline ListJobsByStatusResult& AddJobs(Job&& value) { m_jobs.push_back(std::move(value)); return *this; }
/**
* <p> A value that you use to access the second and subsequent pages of results,
* if any. When the jobs in the specified pipeline fit on one page or when you've
* reached the last page of results, the value of <code>NextPageToken</code> is
* <code>null</code>. </p>
*/
inline const Aws::String& GetNextPageToken() const{ return m_nextPageToken; }
/**
* <p> A value that you use to access the second and subsequent pages of results,
* if any. When the jobs in the specified pipeline fit on one page or when you've
* reached the last page of results, the value of <code>NextPageToken</code> is
* <code>null</code>. </p>
*/
inline void SetNextPageToken(const Aws::String& value) { m_nextPageToken = value; }
/**
* <p> A value that you use to access the second and subsequent pages of results,
* if any. When the jobs in the specified pipeline fit on one page or when you've
* reached the last page of results, the value of <code>NextPageToken</code> is
* <code>null</code>. </p>
*/
inline void SetNextPageToken(Aws::String&& value) { m_nextPageToken = std::move(value); }
/**
* <p> A value that you use to access the second and subsequent pages of results,
* if any. When the jobs in the specified pipeline fit on one page or when you've
* reached the last page of results, the value of <code>NextPageToken</code> is
* <code>null</code>. </p>
*/
inline void SetNextPageToken(const char* value) { m_nextPageToken.assign(value); }
/**
* <p> A value that you use to access the second and subsequent pages of results,
* if any. When the jobs in the specified pipeline fit on one page or when you've
* reached the last page of results, the value of <code>NextPageToken</code> is
* <code>null</code>. </p>
*/
inline ListJobsByStatusResult& WithNextPageToken(const Aws::String& value) { SetNextPageToken(value); return *this;}
/**
* <p> A value that you use to access the second and subsequent pages of results,
* if any. When the jobs in the specified pipeline fit on one page or when you've
* reached the last page of results, the value of <code>NextPageToken</code> is
* <code>null</code>. </p>
*/
inline ListJobsByStatusResult& WithNextPageToken(Aws::String&& value) { SetNextPageToken(std::move(value)); return *this;}
/**
* <p> A value that you use to access the second and subsequent pages of results,
* if any. When the jobs in the specified pipeline fit on one page or when you've
* reached the last page of results, the value of <code>NextPageToken</code> is
* <code>null</code>. </p>
*/
inline ListJobsByStatusResult& WithNextPageToken(const char* value) { SetNextPageToken(value); return *this;}
private:
Aws::Vector<Job> m_jobs;
Aws::String m_nextPageToken;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,168 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/ElasticTranscoderRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Http
{
class URI;
} //namespace Http
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>ListPipelineRequest</code> structure.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListPipelinesRequest">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API ListPipelinesRequest : public ElasticTranscoderRequest
{
public:
ListPipelinesRequest();
// 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 "ListPipelines"; }
Aws::String SerializePayload() const override;
void AddQueryStringParameters(Aws::Http::URI& uri) const override;
/**
* <p>To list pipelines in chronological order by the date and time that they were
* created, enter <code>true</code>. To list pipelines in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline const Aws::String& GetAscending() const{ return m_ascending; }
/**
* <p>To list pipelines in chronological order by the date and time that they were
* created, enter <code>true</code>. To list pipelines in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline bool AscendingHasBeenSet() const { return m_ascendingHasBeenSet; }
/**
* <p>To list pipelines in chronological order by the date and time that they were
* created, enter <code>true</code>. To list pipelines in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline void SetAscending(const Aws::String& value) { m_ascendingHasBeenSet = true; m_ascending = value; }
/**
* <p>To list pipelines in chronological order by the date and time that they were
* created, enter <code>true</code>. To list pipelines in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline void SetAscending(Aws::String&& value) { m_ascendingHasBeenSet = true; m_ascending = std::move(value); }
/**
* <p>To list pipelines in chronological order by the date and time that they were
* created, enter <code>true</code>. To list pipelines in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline void SetAscending(const char* value) { m_ascendingHasBeenSet = true; m_ascending.assign(value); }
/**
* <p>To list pipelines in chronological order by the date and time that they were
* created, enter <code>true</code>. To list pipelines in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline ListPipelinesRequest& WithAscending(const Aws::String& value) { SetAscending(value); return *this;}
/**
* <p>To list pipelines in chronological order by the date and time that they were
* created, enter <code>true</code>. To list pipelines in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline ListPipelinesRequest& WithAscending(Aws::String&& value) { SetAscending(std::move(value)); return *this;}
/**
* <p>To list pipelines in chronological order by the date and time that they were
* created, enter <code>true</code>. To list pipelines in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline ListPipelinesRequest& WithAscending(const char* value) { SetAscending(value); return *this;}
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline const Aws::String& GetPageToken() const{ return m_pageToken; }
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline bool PageTokenHasBeenSet() const { return m_pageTokenHasBeenSet; }
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline void SetPageToken(const Aws::String& value) { m_pageTokenHasBeenSet = true; m_pageToken = value; }
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline void SetPageToken(Aws::String&& value) { m_pageTokenHasBeenSet = true; m_pageToken = std::move(value); }
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline void SetPageToken(const char* value) { m_pageTokenHasBeenSet = true; m_pageToken.assign(value); }
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline ListPipelinesRequest& WithPageToken(const Aws::String& value) { SetPageToken(value); return *this;}
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline ListPipelinesRequest& WithPageToken(Aws::String&& value) { SetPageToken(std::move(value)); return *this;}
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline ListPipelinesRequest& WithPageToken(const char* value) { SetPageToken(value); return *this;}
private:
Aws::String m_ascending;
bool m_ascendingHasBeenSet;
Aws::String m_pageToken;
bool m_pageTokenHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,137 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/elastictranscoder/model/Pipeline.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>A list of the pipelines associated with the current AWS
* account.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListPipelinesResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API ListPipelinesResult
{
public:
ListPipelinesResult();
ListPipelinesResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListPipelinesResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array of <code>Pipeline</code> objects.</p>
*/
inline const Aws::Vector<Pipeline>& GetPipelines() const{ return m_pipelines; }
/**
* <p>An array of <code>Pipeline</code> objects.</p>
*/
inline void SetPipelines(const Aws::Vector<Pipeline>& value) { m_pipelines = value; }
/**
* <p>An array of <code>Pipeline</code> objects.</p>
*/
inline void SetPipelines(Aws::Vector<Pipeline>&& value) { m_pipelines = std::move(value); }
/**
* <p>An array of <code>Pipeline</code> objects.</p>
*/
inline ListPipelinesResult& WithPipelines(const Aws::Vector<Pipeline>& value) { SetPipelines(value); return *this;}
/**
* <p>An array of <code>Pipeline</code> objects.</p>
*/
inline ListPipelinesResult& WithPipelines(Aws::Vector<Pipeline>&& value) { SetPipelines(std::move(value)); return *this;}
/**
* <p>An array of <code>Pipeline</code> objects.</p>
*/
inline ListPipelinesResult& AddPipelines(const Pipeline& value) { m_pipelines.push_back(value); return *this; }
/**
* <p>An array of <code>Pipeline</code> objects.</p>
*/
inline ListPipelinesResult& AddPipelines(Pipeline&& value) { m_pipelines.push_back(std::move(value)); return *this; }
/**
* <p>A value that you use to access the second and subsequent pages of results, if
* any. When the pipelines fit on one page or when you've reached the last page of
* results, the value of <code>NextPageToken</code> is <code>null</code>.</p>
*/
inline const Aws::String& GetNextPageToken() const{ return m_nextPageToken; }
/**
* <p>A value that you use to access the second and subsequent pages of results, if
* any. When the pipelines fit on one page or when you've reached the last page of
* results, the value of <code>NextPageToken</code> is <code>null</code>.</p>
*/
inline void SetNextPageToken(const Aws::String& value) { m_nextPageToken = value; }
/**
* <p>A value that you use to access the second and subsequent pages of results, if
* any. When the pipelines fit on one page or when you've reached the last page of
* results, the value of <code>NextPageToken</code> is <code>null</code>.</p>
*/
inline void SetNextPageToken(Aws::String&& value) { m_nextPageToken = std::move(value); }
/**
* <p>A value that you use to access the second and subsequent pages of results, if
* any. When the pipelines fit on one page or when you've reached the last page of
* results, the value of <code>NextPageToken</code> is <code>null</code>.</p>
*/
inline void SetNextPageToken(const char* value) { m_nextPageToken.assign(value); }
/**
* <p>A value that you use to access the second and subsequent pages of results, if
* any. When the pipelines fit on one page or when you've reached the last page of
* results, the value of <code>NextPageToken</code> is <code>null</code>.</p>
*/
inline ListPipelinesResult& WithNextPageToken(const Aws::String& value) { SetNextPageToken(value); return *this;}
/**
* <p>A value that you use to access the second and subsequent pages of results, if
* any. When the pipelines fit on one page or when you've reached the last page of
* results, the value of <code>NextPageToken</code> is <code>null</code>.</p>
*/
inline ListPipelinesResult& WithNextPageToken(Aws::String&& value) { SetNextPageToken(std::move(value)); return *this;}
/**
* <p>A value that you use to access the second and subsequent pages of results, if
* any. When the pipelines fit on one page or when you've reached the last page of
* results, the value of <code>NextPageToken</code> is <code>null</code>.</p>
*/
inline ListPipelinesResult& WithNextPageToken(const char* value) { SetNextPageToken(value); return *this;}
private:
Aws::Vector<Pipeline> m_pipelines;
Aws::String m_nextPageToken;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,168 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/ElasticTranscoderRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Http
{
class URI;
} //namespace Http
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>ListPresetsRequest</code> structure.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListPresetsRequest">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API ListPresetsRequest : public ElasticTranscoderRequest
{
public:
ListPresetsRequest();
// 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 "ListPresets"; }
Aws::String SerializePayload() const override;
void AddQueryStringParameters(Aws::Http::URI& uri) const override;
/**
* <p>To list presets in chronological order by the date and time that they were
* created, enter <code>true</code>. To list presets in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline const Aws::String& GetAscending() const{ return m_ascending; }
/**
* <p>To list presets in chronological order by the date and time that they were
* created, enter <code>true</code>. To list presets in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline bool AscendingHasBeenSet() const { return m_ascendingHasBeenSet; }
/**
* <p>To list presets in chronological order by the date and time that they were
* created, enter <code>true</code>. To list presets in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline void SetAscending(const Aws::String& value) { m_ascendingHasBeenSet = true; m_ascending = value; }
/**
* <p>To list presets in chronological order by the date and time that they were
* created, enter <code>true</code>. To list presets in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline void SetAscending(Aws::String&& value) { m_ascendingHasBeenSet = true; m_ascending = std::move(value); }
/**
* <p>To list presets in chronological order by the date and time that they were
* created, enter <code>true</code>. To list presets in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline void SetAscending(const char* value) { m_ascendingHasBeenSet = true; m_ascending.assign(value); }
/**
* <p>To list presets in chronological order by the date and time that they were
* created, enter <code>true</code>. To list presets in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline ListPresetsRequest& WithAscending(const Aws::String& value) { SetAscending(value); return *this;}
/**
* <p>To list presets in chronological order by the date and time that they were
* created, enter <code>true</code>. To list presets in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline ListPresetsRequest& WithAscending(Aws::String&& value) { SetAscending(std::move(value)); return *this;}
/**
* <p>To list presets in chronological order by the date and time that they were
* created, enter <code>true</code>. To list presets in reverse chronological
* order, enter <code>false</code>.</p>
*/
inline ListPresetsRequest& WithAscending(const char* value) { SetAscending(value); return *this;}
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline const Aws::String& GetPageToken() const{ return m_pageToken; }
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline bool PageTokenHasBeenSet() const { return m_pageTokenHasBeenSet; }
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline void SetPageToken(const Aws::String& value) { m_pageTokenHasBeenSet = true; m_pageToken = value; }
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline void SetPageToken(Aws::String&& value) { m_pageTokenHasBeenSet = true; m_pageToken = std::move(value); }
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline void SetPageToken(const char* value) { m_pageTokenHasBeenSet = true; m_pageToken.assign(value); }
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline ListPresetsRequest& WithPageToken(const Aws::String& value) { SetPageToken(value); return *this;}
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline ListPresetsRequest& WithPageToken(Aws::String&& value) { SetPageToken(std::move(value)); return *this;}
/**
* <p>When Elastic Transcoder returns more than one page of results, use
* <code>pageToken</code> in subsequent <code>GET</code> requests to get each
* successive page of results. </p>
*/
inline ListPresetsRequest& WithPageToken(const char* value) { SetPageToken(value); return *this;}
private:
Aws::String m_ascending;
bool m_ascendingHasBeenSet;
Aws::String m_pageToken;
bool m_pageTokenHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,136 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/elastictranscoder/model/Preset.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>ListPresetsResponse</code> structure.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ListPresetsResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API ListPresetsResult
{
public:
ListPresetsResult();
ListPresetsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ListPresetsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>An array of <code>Preset</code> objects.</p>
*/
inline const Aws::Vector<Preset>& GetPresets() const{ return m_presets; }
/**
* <p>An array of <code>Preset</code> objects.</p>
*/
inline void SetPresets(const Aws::Vector<Preset>& value) { m_presets = value; }
/**
* <p>An array of <code>Preset</code> objects.</p>
*/
inline void SetPresets(Aws::Vector<Preset>&& value) { m_presets = std::move(value); }
/**
* <p>An array of <code>Preset</code> objects.</p>
*/
inline ListPresetsResult& WithPresets(const Aws::Vector<Preset>& value) { SetPresets(value); return *this;}
/**
* <p>An array of <code>Preset</code> objects.</p>
*/
inline ListPresetsResult& WithPresets(Aws::Vector<Preset>&& value) { SetPresets(std::move(value)); return *this;}
/**
* <p>An array of <code>Preset</code> objects.</p>
*/
inline ListPresetsResult& AddPresets(const Preset& value) { m_presets.push_back(value); return *this; }
/**
* <p>An array of <code>Preset</code> objects.</p>
*/
inline ListPresetsResult& AddPresets(Preset&& value) { m_presets.push_back(std::move(value)); return *this; }
/**
* <p>A value that you use to access the second and subsequent pages of results, if
* any. When the presets fit on one page or when you've reached the last page of
* results, the value of <code>NextPageToken</code> is <code>null</code>.</p>
*/
inline const Aws::String& GetNextPageToken() const{ return m_nextPageToken; }
/**
* <p>A value that you use to access the second and subsequent pages of results, if
* any. When the presets fit on one page or when you've reached the last page of
* results, the value of <code>NextPageToken</code> is <code>null</code>.</p>
*/
inline void SetNextPageToken(const Aws::String& value) { m_nextPageToken = value; }
/**
* <p>A value that you use to access the second and subsequent pages of results, if
* any. When the presets fit on one page or when you've reached the last page of
* results, the value of <code>NextPageToken</code> is <code>null</code>.</p>
*/
inline void SetNextPageToken(Aws::String&& value) { m_nextPageToken = std::move(value); }
/**
* <p>A value that you use to access the second and subsequent pages of results, if
* any. When the presets fit on one page or when you've reached the last page of
* results, the value of <code>NextPageToken</code> is <code>null</code>.</p>
*/
inline void SetNextPageToken(const char* value) { m_nextPageToken.assign(value); }
/**
* <p>A value that you use to access the second and subsequent pages of results, if
* any. When the presets fit on one page or when you've reached the last page of
* results, the value of <code>NextPageToken</code> is <code>null</code>.</p>
*/
inline ListPresetsResult& WithNextPageToken(const Aws::String& value) { SetNextPageToken(value); return *this;}
/**
* <p>A value that you use to access the second and subsequent pages of results, if
* any. When the presets fit on one page or when you've reached the last page of
* results, the value of <code>NextPageToken</code> is <code>null</code>.</p>
*/
inline ListPresetsResult& WithNextPageToken(Aws::String&& value) { SetNextPageToken(std::move(value)); return *this;}
/**
* <p>A value that you use to access the second and subsequent pages of results, if
* any. When the presets fit on one page or when you've reached the last page of
* results, the value of <code>NextPageToken</code> is <code>null</code>.</p>
*/
inline ListPresetsResult& WithNextPageToken(const char* value) { SetNextPageToken(value); return *this;}
private:
Aws::Vector<Preset> m_presets;
Aws::String m_nextPageToken;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,255 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The Amazon Simple Notification Service (Amazon SNS) topic or topics to notify
* in order to report job status.</p> <p>To receive notifications, you
* must also subscribe to the new topic in the Amazon SNS console.</p>
* <p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/Notifications">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API Notifications
{
public:
Notifications();
Notifications(Aws::Utils::Json::JsonView jsonValue);
Notifications& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The Amazon Simple Notification Service (Amazon SNS) topic that you want to
* notify when Elastic Transcoder has started to process the job.</p>
*/
inline const Aws::String& GetProgressing() const{ return m_progressing; }
/**
* <p>The Amazon Simple Notification Service (Amazon SNS) topic that you want to
* notify when Elastic Transcoder has started to process the job.</p>
*/
inline bool ProgressingHasBeenSet() const { return m_progressingHasBeenSet; }
/**
* <p>The Amazon Simple Notification Service (Amazon SNS) topic that you want to
* notify when Elastic Transcoder has started to process the job.</p>
*/
inline void SetProgressing(const Aws::String& value) { m_progressingHasBeenSet = true; m_progressing = value; }
/**
* <p>The Amazon Simple Notification Service (Amazon SNS) topic that you want to
* notify when Elastic Transcoder has started to process the job.</p>
*/
inline void SetProgressing(Aws::String&& value) { m_progressingHasBeenSet = true; m_progressing = std::move(value); }
/**
* <p>The Amazon Simple Notification Service (Amazon SNS) topic that you want to
* notify when Elastic Transcoder has started to process the job.</p>
*/
inline void SetProgressing(const char* value) { m_progressingHasBeenSet = true; m_progressing.assign(value); }
/**
* <p>The Amazon Simple Notification Service (Amazon SNS) topic that you want to
* notify when Elastic Transcoder has started to process the job.</p>
*/
inline Notifications& WithProgressing(const Aws::String& value) { SetProgressing(value); return *this;}
/**
* <p>The Amazon Simple Notification Service (Amazon SNS) topic that you want to
* notify when Elastic Transcoder has started to process the job.</p>
*/
inline Notifications& WithProgressing(Aws::String&& value) { SetProgressing(std::move(value)); return *this;}
/**
* <p>The Amazon Simple Notification Service (Amazon SNS) topic that you want to
* notify when Elastic Transcoder has started to process the job.</p>
*/
inline Notifications& WithProgressing(const char* value) { SetProgressing(value); return *this;}
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder has
* finished processing the job.</p>
*/
inline const Aws::String& GetCompleted() const{ return m_completed; }
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder has
* finished processing the job.</p>
*/
inline bool CompletedHasBeenSet() const { return m_completedHasBeenSet; }
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder has
* finished processing the job.</p>
*/
inline void SetCompleted(const Aws::String& value) { m_completedHasBeenSet = true; m_completed = value; }
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder has
* finished processing the job.</p>
*/
inline void SetCompleted(Aws::String&& value) { m_completedHasBeenSet = true; m_completed = std::move(value); }
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder has
* finished processing the job.</p>
*/
inline void SetCompleted(const char* value) { m_completedHasBeenSet = true; m_completed.assign(value); }
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder has
* finished processing the job.</p>
*/
inline Notifications& WithCompleted(const Aws::String& value) { SetCompleted(value); return *this;}
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder has
* finished processing the job.</p>
*/
inline Notifications& WithCompleted(Aws::String&& value) { SetCompleted(std::move(value)); return *this;}
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder has
* finished processing the job.</p>
*/
inline Notifications& WithCompleted(const char* value) { SetCompleted(value); return *this;}
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters a warning condition.</p>
*/
inline const Aws::String& GetWarning() const{ return m_warning; }
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters a warning condition.</p>
*/
inline bool WarningHasBeenSet() const { return m_warningHasBeenSet; }
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters a warning condition.</p>
*/
inline void SetWarning(const Aws::String& value) { m_warningHasBeenSet = true; m_warning = value; }
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters a warning condition.</p>
*/
inline void SetWarning(Aws::String&& value) { m_warningHasBeenSet = true; m_warning = std::move(value); }
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters a warning condition.</p>
*/
inline void SetWarning(const char* value) { m_warningHasBeenSet = true; m_warning.assign(value); }
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters a warning condition.</p>
*/
inline Notifications& WithWarning(const Aws::String& value) { SetWarning(value); return *this;}
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters a warning condition.</p>
*/
inline Notifications& WithWarning(Aws::String&& value) { SetWarning(std::move(value)); return *this;}
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters a warning condition.</p>
*/
inline Notifications& WithWarning(const char* value) { SetWarning(value); return *this;}
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters an error condition.</p>
*/
inline const Aws::String& GetError() const{ return m_error; }
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters an error condition.</p>
*/
inline bool ErrorHasBeenSet() const { return m_errorHasBeenSet; }
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters an error condition.</p>
*/
inline void SetError(const Aws::String& value) { m_errorHasBeenSet = true; m_error = value; }
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters an error condition.</p>
*/
inline void SetError(Aws::String&& value) { m_errorHasBeenSet = true; m_error = std::move(value); }
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters an error condition.</p>
*/
inline void SetError(const char* value) { m_errorHasBeenSet = true; m_error.assign(value); }
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters an error condition.</p>
*/
inline Notifications& WithError(const Aws::String& value) { SetError(value); return *this;}
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters an error condition.</p>
*/
inline Notifications& WithError(Aws::String&& value) { SetError(std::move(value)); return *this;}
/**
* <p>The Amazon SNS topic that you want to notify when Elastic Transcoder
* encounters an error condition.</p>
*/
inline Notifications& WithError(const char* value) { SetError(value); return *this;}
private:
Aws::String m_progressing;
bool m_progressingHasBeenSet;
Aws::String m_completed;
bool m_completedHasBeenSet;
Aws::String m_warning;
bool m_warningHasBeenSet;
Aws::String m_error;
bool m_errorHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,343 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>Permission</code> structure.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/Permission">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API Permission
{
public:
Permission();
Permission(Aws::Utils::Json::JsonView jsonValue);
Permission& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The type of value that appears in the Grantee object:</p> <ul> <li> <p>
* <code>Canonical</code>: Either the canonical user ID for an AWS account or an
* origin access identity for an Amazon CloudFront distribution.</p>
* <p>A canonical user ID is not the same as an AWS account number.</p>
* </li> <li> <p> <code>Email</code>: The registered email address of
* an AWS account.</p> </li> <li> <p> <code>Group</code>: One of the following
* predefined Amazon S3 groups: <code>AllUsers</code>,
* <code>AuthenticatedUsers</code>, or <code>LogDelivery</code>.</p> </li> </ul>
*/
inline const Aws::String& GetGranteeType() const{ return m_granteeType; }
/**
* <p>The type of value that appears in the Grantee object:</p> <ul> <li> <p>
* <code>Canonical</code>: Either the canonical user ID for an AWS account or an
* origin access identity for an Amazon CloudFront distribution.</p>
* <p>A canonical user ID is not the same as an AWS account number.</p>
* </li> <li> <p> <code>Email</code>: The registered email address of
* an AWS account.</p> </li> <li> <p> <code>Group</code>: One of the following
* predefined Amazon S3 groups: <code>AllUsers</code>,
* <code>AuthenticatedUsers</code>, or <code>LogDelivery</code>.</p> </li> </ul>
*/
inline bool GranteeTypeHasBeenSet() const { return m_granteeTypeHasBeenSet; }
/**
* <p>The type of value that appears in the Grantee object:</p> <ul> <li> <p>
* <code>Canonical</code>: Either the canonical user ID for an AWS account or an
* origin access identity for an Amazon CloudFront distribution.</p>
* <p>A canonical user ID is not the same as an AWS account number.</p>
* </li> <li> <p> <code>Email</code>: The registered email address of
* an AWS account.</p> </li> <li> <p> <code>Group</code>: One of the following
* predefined Amazon S3 groups: <code>AllUsers</code>,
* <code>AuthenticatedUsers</code>, or <code>LogDelivery</code>.</p> </li> </ul>
*/
inline void SetGranteeType(const Aws::String& value) { m_granteeTypeHasBeenSet = true; m_granteeType = value; }
/**
* <p>The type of value that appears in the Grantee object:</p> <ul> <li> <p>
* <code>Canonical</code>: Either the canonical user ID for an AWS account or an
* origin access identity for an Amazon CloudFront distribution.</p>
* <p>A canonical user ID is not the same as an AWS account number.</p>
* </li> <li> <p> <code>Email</code>: The registered email address of
* an AWS account.</p> </li> <li> <p> <code>Group</code>: One of the following
* predefined Amazon S3 groups: <code>AllUsers</code>,
* <code>AuthenticatedUsers</code>, or <code>LogDelivery</code>.</p> </li> </ul>
*/
inline void SetGranteeType(Aws::String&& value) { m_granteeTypeHasBeenSet = true; m_granteeType = std::move(value); }
/**
* <p>The type of value that appears in the Grantee object:</p> <ul> <li> <p>
* <code>Canonical</code>: Either the canonical user ID for an AWS account or an
* origin access identity for an Amazon CloudFront distribution.</p>
* <p>A canonical user ID is not the same as an AWS account number.</p>
* </li> <li> <p> <code>Email</code>: The registered email address of
* an AWS account.</p> </li> <li> <p> <code>Group</code>: One of the following
* predefined Amazon S3 groups: <code>AllUsers</code>,
* <code>AuthenticatedUsers</code>, or <code>LogDelivery</code>.</p> </li> </ul>
*/
inline void SetGranteeType(const char* value) { m_granteeTypeHasBeenSet = true; m_granteeType.assign(value); }
/**
* <p>The type of value that appears in the Grantee object:</p> <ul> <li> <p>
* <code>Canonical</code>: Either the canonical user ID for an AWS account or an
* origin access identity for an Amazon CloudFront distribution.</p>
* <p>A canonical user ID is not the same as an AWS account number.</p>
* </li> <li> <p> <code>Email</code>: The registered email address of
* an AWS account.</p> </li> <li> <p> <code>Group</code>: One of the following
* predefined Amazon S3 groups: <code>AllUsers</code>,
* <code>AuthenticatedUsers</code>, or <code>LogDelivery</code>.</p> </li> </ul>
*/
inline Permission& WithGranteeType(const Aws::String& value) { SetGranteeType(value); return *this;}
/**
* <p>The type of value that appears in the Grantee object:</p> <ul> <li> <p>
* <code>Canonical</code>: Either the canonical user ID for an AWS account or an
* origin access identity for an Amazon CloudFront distribution.</p>
* <p>A canonical user ID is not the same as an AWS account number.</p>
* </li> <li> <p> <code>Email</code>: The registered email address of
* an AWS account.</p> </li> <li> <p> <code>Group</code>: One of the following
* predefined Amazon S3 groups: <code>AllUsers</code>,
* <code>AuthenticatedUsers</code>, or <code>LogDelivery</code>.</p> </li> </ul>
*/
inline Permission& WithGranteeType(Aws::String&& value) { SetGranteeType(std::move(value)); return *this;}
/**
* <p>The type of value that appears in the Grantee object:</p> <ul> <li> <p>
* <code>Canonical</code>: Either the canonical user ID for an AWS account or an
* origin access identity for an Amazon CloudFront distribution.</p>
* <p>A canonical user ID is not the same as an AWS account number.</p>
* </li> <li> <p> <code>Email</code>: The registered email address of
* an AWS account.</p> </li> <li> <p> <code>Group</code>: One of the following
* predefined Amazon S3 groups: <code>AllUsers</code>,
* <code>AuthenticatedUsers</code>, or <code>LogDelivery</code>.</p> </li> </ul>
*/
inline Permission& WithGranteeType(const char* value) { SetGranteeType(value); return *this;}
/**
* <p>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.</p>
*/
inline const Aws::String& GetGrantee() const{ return m_grantee; }
/**
* <p>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.</p>
*/
inline bool GranteeHasBeenSet() const { return m_granteeHasBeenSet; }
/**
* <p>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.</p>
*/
inline void SetGrantee(const Aws::String& value) { m_granteeHasBeenSet = true; m_grantee = value; }
/**
* <p>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.</p>
*/
inline void SetGrantee(Aws::String&& value) { m_granteeHasBeenSet = true; m_grantee = std::move(value); }
/**
* <p>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.</p>
*/
inline void SetGrantee(const char* value) { m_granteeHasBeenSet = true; m_grantee.assign(value); }
/**
* <p>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.</p>
*/
inline Permission& WithGrantee(const Aws::String& value) { SetGrantee(value); return *this;}
/**
* <p>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.</p>
*/
inline Permission& WithGrantee(Aws::String&& value) { SetGrantee(std::move(value)); return *this;}
/**
* <p>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.</p>
*/
inline Permission& WithGrantee(const char* value) { SetGrantee(value); return *this;}
/**
* <p> The permission that you want to give to the AWS user that is listed in
* Grantee. Valid values include: </p> <ul> <li> <p> <code>READ</code>: The grantee
* can read the thumbnails and metadata for thumbnails that Elastic Transcoder adds
* to the Amazon S3 bucket.</p> </li> <li> <p> <code>READ_ACP</code>: The grantee
* can read the object ACL for thumbnails that Elastic Transcoder adds to the
* Amazon S3 bucket.</p> </li> <li> <p> <code>WRITE_ACP</code>: The grantee can
* write the ACL for the thumbnails that Elastic Transcoder adds to the Amazon S3
* bucket.</p> </li> <li> <p> <code>FULL_CONTROL</code>: The grantee has READ,
* READ_ACP, and WRITE_ACP permissions for the thumbnails that Elastic Transcoder
* adds to the Amazon S3 bucket.</p> </li> </ul>
*/
inline const Aws::Vector<Aws::String>& GetAccess() const{ return m_access; }
/**
* <p> The permission that you want to give to the AWS user that is listed in
* Grantee. Valid values include: </p> <ul> <li> <p> <code>READ</code>: The grantee
* can read the thumbnails and metadata for thumbnails that Elastic Transcoder adds
* to the Amazon S3 bucket.</p> </li> <li> <p> <code>READ_ACP</code>: The grantee
* can read the object ACL for thumbnails that Elastic Transcoder adds to the
* Amazon S3 bucket.</p> </li> <li> <p> <code>WRITE_ACP</code>: The grantee can
* write the ACL for the thumbnails that Elastic Transcoder adds to the Amazon S3
* bucket.</p> </li> <li> <p> <code>FULL_CONTROL</code>: The grantee has READ,
* READ_ACP, and WRITE_ACP permissions for the thumbnails that Elastic Transcoder
* adds to the Amazon S3 bucket.</p> </li> </ul>
*/
inline bool AccessHasBeenSet() const { return m_accessHasBeenSet; }
/**
* <p> The permission that you want to give to the AWS user that is listed in
* Grantee. Valid values include: </p> <ul> <li> <p> <code>READ</code>: The grantee
* can read the thumbnails and metadata for thumbnails that Elastic Transcoder adds
* to the Amazon S3 bucket.</p> </li> <li> <p> <code>READ_ACP</code>: The grantee
* can read the object ACL for thumbnails that Elastic Transcoder adds to the
* Amazon S3 bucket.</p> </li> <li> <p> <code>WRITE_ACP</code>: The grantee can
* write the ACL for the thumbnails that Elastic Transcoder adds to the Amazon S3
* bucket.</p> </li> <li> <p> <code>FULL_CONTROL</code>: The grantee has READ,
* READ_ACP, and WRITE_ACP permissions for the thumbnails that Elastic Transcoder
* adds to the Amazon S3 bucket.</p> </li> </ul>
*/
inline void SetAccess(const Aws::Vector<Aws::String>& value) { m_accessHasBeenSet = true; m_access = value; }
/**
* <p> The permission that you want to give to the AWS user that is listed in
* Grantee. Valid values include: </p> <ul> <li> <p> <code>READ</code>: The grantee
* can read the thumbnails and metadata for thumbnails that Elastic Transcoder adds
* to the Amazon S3 bucket.</p> </li> <li> <p> <code>READ_ACP</code>: The grantee
* can read the object ACL for thumbnails that Elastic Transcoder adds to the
* Amazon S3 bucket.</p> </li> <li> <p> <code>WRITE_ACP</code>: The grantee can
* write the ACL for the thumbnails that Elastic Transcoder adds to the Amazon S3
* bucket.</p> </li> <li> <p> <code>FULL_CONTROL</code>: The grantee has READ,
* READ_ACP, and WRITE_ACP permissions for the thumbnails that Elastic Transcoder
* adds to the Amazon S3 bucket.</p> </li> </ul>
*/
inline void SetAccess(Aws::Vector<Aws::String>&& value) { m_accessHasBeenSet = true; m_access = std::move(value); }
/**
* <p> The permission that you want to give to the AWS user that is listed in
* Grantee. Valid values include: </p> <ul> <li> <p> <code>READ</code>: The grantee
* can read the thumbnails and metadata for thumbnails that Elastic Transcoder adds
* to the Amazon S3 bucket.</p> </li> <li> <p> <code>READ_ACP</code>: The grantee
* can read the object ACL for thumbnails that Elastic Transcoder adds to the
* Amazon S3 bucket.</p> </li> <li> <p> <code>WRITE_ACP</code>: The grantee can
* write the ACL for the thumbnails that Elastic Transcoder adds to the Amazon S3
* bucket.</p> </li> <li> <p> <code>FULL_CONTROL</code>: The grantee has READ,
* READ_ACP, and WRITE_ACP permissions for the thumbnails that Elastic Transcoder
* adds to the Amazon S3 bucket.</p> </li> </ul>
*/
inline Permission& WithAccess(const Aws::Vector<Aws::String>& value) { SetAccess(value); return *this;}
/**
* <p> The permission that you want to give to the AWS user that is listed in
* Grantee. Valid values include: </p> <ul> <li> <p> <code>READ</code>: The grantee
* can read the thumbnails and metadata for thumbnails that Elastic Transcoder adds
* to the Amazon S3 bucket.</p> </li> <li> <p> <code>READ_ACP</code>: The grantee
* can read the object ACL for thumbnails that Elastic Transcoder adds to the
* Amazon S3 bucket.</p> </li> <li> <p> <code>WRITE_ACP</code>: The grantee can
* write the ACL for the thumbnails that Elastic Transcoder adds to the Amazon S3
* bucket.</p> </li> <li> <p> <code>FULL_CONTROL</code>: The grantee has READ,
* READ_ACP, and WRITE_ACP permissions for the thumbnails that Elastic Transcoder
* adds to the Amazon S3 bucket.</p> </li> </ul>
*/
inline Permission& WithAccess(Aws::Vector<Aws::String>&& value) { SetAccess(std::move(value)); return *this;}
/**
* <p> The permission that you want to give to the AWS user that is listed in
* Grantee. Valid values include: </p> <ul> <li> <p> <code>READ</code>: The grantee
* can read the thumbnails and metadata for thumbnails that Elastic Transcoder adds
* to the Amazon S3 bucket.</p> </li> <li> <p> <code>READ_ACP</code>: The grantee
* can read the object ACL for thumbnails that Elastic Transcoder adds to the
* Amazon S3 bucket.</p> </li> <li> <p> <code>WRITE_ACP</code>: The grantee can
* write the ACL for the thumbnails that Elastic Transcoder adds to the Amazon S3
* bucket.</p> </li> <li> <p> <code>FULL_CONTROL</code>: The grantee has READ,
* READ_ACP, and WRITE_ACP permissions for the thumbnails that Elastic Transcoder
* adds to the Amazon S3 bucket.</p> </li> </ul>
*/
inline Permission& AddAccess(const Aws::String& value) { m_accessHasBeenSet = true; m_access.push_back(value); return *this; }
/**
* <p> The permission that you want to give to the AWS user that is listed in
* Grantee. Valid values include: </p> <ul> <li> <p> <code>READ</code>: The grantee
* can read the thumbnails and metadata for thumbnails that Elastic Transcoder adds
* to the Amazon S3 bucket.</p> </li> <li> <p> <code>READ_ACP</code>: The grantee
* can read the object ACL for thumbnails that Elastic Transcoder adds to the
* Amazon S3 bucket.</p> </li> <li> <p> <code>WRITE_ACP</code>: The grantee can
* write the ACL for the thumbnails that Elastic Transcoder adds to the Amazon S3
* bucket.</p> </li> <li> <p> <code>FULL_CONTROL</code>: The grantee has READ,
* READ_ACP, and WRITE_ACP permissions for the thumbnails that Elastic Transcoder
* adds to the Amazon S3 bucket.</p> </li> </ul>
*/
inline Permission& AddAccess(Aws::String&& value) { m_accessHasBeenSet = true; m_access.push_back(std::move(value)); return *this; }
/**
* <p> The permission that you want to give to the AWS user that is listed in
* Grantee. Valid values include: </p> <ul> <li> <p> <code>READ</code>: The grantee
* can read the thumbnails and metadata for thumbnails that Elastic Transcoder adds
* to the Amazon S3 bucket.</p> </li> <li> <p> <code>READ_ACP</code>: The grantee
* can read the object ACL for thumbnails that Elastic Transcoder adds to the
* Amazon S3 bucket.</p> </li> <li> <p> <code>WRITE_ACP</code>: The grantee can
* write the ACL for the thumbnails that Elastic Transcoder adds to the Amazon S3
* bucket.</p> </li> <li> <p> <code>FULL_CONTROL</code>: The grantee has READ,
* READ_ACP, and WRITE_ACP permissions for the thumbnails that Elastic Transcoder
* adds to the Amazon S3 bucket.</p> </li> </ul>
*/
inline Permission& AddAccess(const char* value) { m_accessHasBeenSet = true; m_access.push_back(value); return *this; }
private:
Aws::String m_granteeType;
bool m_granteeTypeHasBeenSet;
Aws::String m_grantee;
bool m_granteeHasBeenSet;
Aws::Vector<Aws::String> m_access;
bool m_accessHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,379 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/elastictranscoder/model/Permission.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>PipelineOutputConfig</code> structure.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/PipelineOutputConfig">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API PipelineOutputConfig
{
public:
PipelineOutputConfig();
PipelineOutputConfig(Aws::Utils::Json::JsonView jsonValue);
PipelineOutputConfig& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p> The Amazon S3 bucket in which you want Elastic Transcoder to save the
* transcoded files. Specify this value when all of the following are true:</p>
* <ul> <li> <p>You want to save transcoded files, thumbnails (if any), and
* playlists (if any) together in one bucket.</p> </li> <li> <p>You do not want to
* specify the users or groups who have access to the transcoded files, thumbnails,
* and playlists.</p> </li> <li> <p>You do not want to specify the permissions that
* Elastic Transcoder grants to the files.</p> </li> <li> <p>You want to associate
* the transcoded files and thumbnails with the Amazon S3 Standard storage
* class.</p> </li> </ul> <p>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
* <code>ContentConfig</code> and <code>ThumbnailConfig</code> instead. </p>
*/
inline const Aws::String& GetBucket() const{ return m_bucket; }
/**
* <p> The Amazon S3 bucket in which you want Elastic Transcoder to save the
* transcoded files. Specify this value when all of the following are true:</p>
* <ul> <li> <p>You want to save transcoded files, thumbnails (if any), and
* playlists (if any) together in one bucket.</p> </li> <li> <p>You do not want to
* specify the users or groups who have access to the transcoded files, thumbnails,
* and playlists.</p> </li> <li> <p>You do not want to specify the permissions that
* Elastic Transcoder grants to the files.</p> </li> <li> <p>You want to associate
* the transcoded files and thumbnails with the Amazon S3 Standard storage
* class.</p> </li> </ul> <p>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
* <code>ContentConfig</code> and <code>ThumbnailConfig</code> instead. </p>
*/
inline bool BucketHasBeenSet() const { return m_bucketHasBeenSet; }
/**
* <p> The Amazon S3 bucket in which you want Elastic Transcoder to save the
* transcoded files. Specify this value when all of the following are true:</p>
* <ul> <li> <p>You want to save transcoded files, thumbnails (if any), and
* playlists (if any) together in one bucket.</p> </li> <li> <p>You do not want to
* specify the users or groups who have access to the transcoded files, thumbnails,
* and playlists.</p> </li> <li> <p>You do not want to specify the permissions that
* Elastic Transcoder grants to the files.</p> </li> <li> <p>You want to associate
* the transcoded files and thumbnails with the Amazon S3 Standard storage
* class.</p> </li> </ul> <p>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
* <code>ContentConfig</code> and <code>ThumbnailConfig</code> instead. </p>
*/
inline void SetBucket(const Aws::String& value) { m_bucketHasBeenSet = true; m_bucket = value; }
/**
* <p> The Amazon S3 bucket in which you want Elastic Transcoder to save the
* transcoded files. Specify this value when all of the following are true:</p>
* <ul> <li> <p>You want to save transcoded files, thumbnails (if any), and
* playlists (if any) together in one bucket.</p> </li> <li> <p>You do not want to
* specify the users or groups who have access to the transcoded files, thumbnails,
* and playlists.</p> </li> <li> <p>You do not want to specify the permissions that
* Elastic Transcoder grants to the files.</p> </li> <li> <p>You want to associate
* the transcoded files and thumbnails with the Amazon S3 Standard storage
* class.</p> </li> </ul> <p>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
* <code>ContentConfig</code> and <code>ThumbnailConfig</code> instead. </p>
*/
inline void SetBucket(Aws::String&& value) { m_bucketHasBeenSet = true; m_bucket = std::move(value); }
/**
* <p> The Amazon S3 bucket in which you want Elastic Transcoder to save the
* transcoded files. Specify this value when all of the following are true:</p>
* <ul> <li> <p>You want to save transcoded files, thumbnails (if any), and
* playlists (if any) together in one bucket.</p> </li> <li> <p>You do not want to
* specify the users or groups who have access to the transcoded files, thumbnails,
* and playlists.</p> </li> <li> <p>You do not want to specify the permissions that
* Elastic Transcoder grants to the files.</p> </li> <li> <p>You want to associate
* the transcoded files and thumbnails with the Amazon S3 Standard storage
* class.</p> </li> </ul> <p>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
* <code>ContentConfig</code> and <code>ThumbnailConfig</code> instead. </p>
*/
inline void SetBucket(const char* value) { m_bucketHasBeenSet = true; m_bucket.assign(value); }
/**
* <p> The Amazon S3 bucket in which you want Elastic Transcoder to save the
* transcoded files. Specify this value when all of the following are true:</p>
* <ul> <li> <p>You want to save transcoded files, thumbnails (if any), and
* playlists (if any) together in one bucket.</p> </li> <li> <p>You do not want to
* specify the users or groups who have access to the transcoded files, thumbnails,
* and playlists.</p> </li> <li> <p>You do not want to specify the permissions that
* Elastic Transcoder grants to the files.</p> </li> <li> <p>You want to associate
* the transcoded files and thumbnails with the Amazon S3 Standard storage
* class.</p> </li> </ul> <p>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
* <code>ContentConfig</code> and <code>ThumbnailConfig</code> instead. </p>
*/
inline PipelineOutputConfig& WithBucket(const Aws::String& value) { SetBucket(value); return *this;}
/**
* <p> The Amazon S3 bucket in which you want Elastic Transcoder to save the
* transcoded files. Specify this value when all of the following are true:</p>
* <ul> <li> <p>You want to save transcoded files, thumbnails (if any), and
* playlists (if any) together in one bucket.</p> </li> <li> <p>You do not want to
* specify the users or groups who have access to the transcoded files, thumbnails,
* and playlists.</p> </li> <li> <p>You do not want to specify the permissions that
* Elastic Transcoder grants to the files.</p> </li> <li> <p>You want to associate
* the transcoded files and thumbnails with the Amazon S3 Standard storage
* class.</p> </li> </ul> <p>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
* <code>ContentConfig</code> and <code>ThumbnailConfig</code> instead. </p>
*/
inline PipelineOutputConfig& WithBucket(Aws::String&& value) { SetBucket(std::move(value)); return *this;}
/**
* <p> The Amazon S3 bucket in which you want Elastic Transcoder to save the
* transcoded files. Specify this value when all of the following are true:</p>
* <ul> <li> <p>You want to save transcoded files, thumbnails (if any), and
* playlists (if any) together in one bucket.</p> </li> <li> <p>You do not want to
* specify the users or groups who have access to the transcoded files, thumbnails,
* and playlists.</p> </li> <li> <p>You do not want to specify the permissions that
* Elastic Transcoder grants to the files.</p> </li> <li> <p>You want to associate
* the transcoded files and thumbnails with the Amazon S3 Standard storage
* class.</p> </li> </ul> <p>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
* <code>ContentConfig</code> and <code>ThumbnailConfig</code> instead. </p>
*/
inline PipelineOutputConfig& WithBucket(const char* value) { SetBucket(value); return *this;}
/**
* <p> The Amazon S3 storage class, <code>Standard</code> or
* <code>ReducedRedundancy</code>, that you want Elastic Transcoder to assign to
* the video files and playlists that it stores in your Amazon S3 bucket. </p>
*/
inline const Aws::String& GetStorageClass() const{ return m_storageClass; }
/**
* <p> The Amazon S3 storage class, <code>Standard</code> or
* <code>ReducedRedundancy</code>, that you want Elastic Transcoder to assign to
* the video files and playlists that it stores in your Amazon S3 bucket. </p>
*/
inline bool StorageClassHasBeenSet() const { return m_storageClassHasBeenSet; }
/**
* <p> The Amazon S3 storage class, <code>Standard</code> or
* <code>ReducedRedundancy</code>, that you want Elastic Transcoder to assign to
* the video files and playlists that it stores in your Amazon S3 bucket. </p>
*/
inline void SetStorageClass(const Aws::String& value) { m_storageClassHasBeenSet = true; m_storageClass = value; }
/**
* <p> The Amazon S3 storage class, <code>Standard</code> or
* <code>ReducedRedundancy</code>, that you want Elastic Transcoder to assign to
* the video files and playlists that it stores in your Amazon S3 bucket. </p>
*/
inline void SetStorageClass(Aws::String&& value) { m_storageClassHasBeenSet = true; m_storageClass = std::move(value); }
/**
* <p> The Amazon S3 storage class, <code>Standard</code> or
* <code>ReducedRedundancy</code>, that you want Elastic Transcoder to assign to
* the video files and playlists that it stores in your Amazon S3 bucket. </p>
*/
inline void SetStorageClass(const char* value) { m_storageClassHasBeenSet = true; m_storageClass.assign(value); }
/**
* <p> The Amazon S3 storage class, <code>Standard</code> or
* <code>ReducedRedundancy</code>, that you want Elastic Transcoder to assign to
* the video files and playlists that it stores in your Amazon S3 bucket. </p>
*/
inline PipelineOutputConfig& WithStorageClass(const Aws::String& value) { SetStorageClass(value); return *this;}
/**
* <p> The Amazon S3 storage class, <code>Standard</code> or
* <code>ReducedRedundancy</code>, that you want Elastic Transcoder to assign to
* the video files and playlists that it stores in your Amazon S3 bucket. </p>
*/
inline PipelineOutputConfig& WithStorageClass(Aws::String&& value) { SetStorageClass(std::move(value)); return *this;}
/**
* <p> The Amazon S3 storage class, <code>Standard</code> or
* <code>ReducedRedundancy</code>, that you want Elastic Transcoder to assign to
* the video files and playlists that it stores in your Amazon S3 bucket. </p>
*/
inline PipelineOutputConfig& WithStorageClass(const char* value) { SetStorageClass(value); return *this;}
/**
* <p>Optional. The <code>Permissions</code> object specifies which users and/or
* predefined Amazon S3 groups you want to have access to transcoded files and
* playlists, 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.</p>
* <p>If you include <code>Permissions</code>, Elastic Transcoder grants only the
* permissions that you specify. It does not grant full permissions to the owner of
* the role specified by <code>Role</code>. If you want that user to have full
* control, you must explicitly grant full control to the user.</p> <p> If you omit
* <code>Permissions</code>, Elastic Transcoder grants full control over the
* transcoded files and playlists to the owner of the role specified by
* <code>Role</code>, and grants no other permissions to any other user or
* group.</p>
*/
inline const Aws::Vector<Permission>& GetPermissions() const{ return m_permissions; }
/**
* <p>Optional. The <code>Permissions</code> object specifies which users and/or
* predefined Amazon S3 groups you want to have access to transcoded files and
* playlists, 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.</p>
* <p>If you include <code>Permissions</code>, Elastic Transcoder grants only the
* permissions that you specify. It does not grant full permissions to the owner of
* the role specified by <code>Role</code>. If you want that user to have full
* control, you must explicitly grant full control to the user.</p> <p> If you omit
* <code>Permissions</code>, Elastic Transcoder grants full control over the
* transcoded files and playlists to the owner of the role specified by
* <code>Role</code>, and grants no other permissions to any other user or
* group.</p>
*/
inline bool PermissionsHasBeenSet() const { return m_permissionsHasBeenSet; }
/**
* <p>Optional. The <code>Permissions</code> object specifies which users and/or
* predefined Amazon S3 groups you want to have access to transcoded files and
* playlists, 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.</p>
* <p>If you include <code>Permissions</code>, Elastic Transcoder grants only the
* permissions that you specify. It does not grant full permissions to the owner of
* the role specified by <code>Role</code>. If you want that user to have full
* control, you must explicitly grant full control to the user.</p> <p> If you omit
* <code>Permissions</code>, Elastic Transcoder grants full control over the
* transcoded files and playlists to the owner of the role specified by
* <code>Role</code>, and grants no other permissions to any other user or
* group.</p>
*/
inline void SetPermissions(const Aws::Vector<Permission>& value) { m_permissionsHasBeenSet = true; m_permissions = value; }
/**
* <p>Optional. The <code>Permissions</code> object specifies which users and/or
* predefined Amazon S3 groups you want to have access to transcoded files and
* playlists, 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.</p>
* <p>If you include <code>Permissions</code>, Elastic Transcoder grants only the
* permissions that you specify. It does not grant full permissions to the owner of
* the role specified by <code>Role</code>. If you want that user to have full
* control, you must explicitly grant full control to the user.</p> <p> If you omit
* <code>Permissions</code>, Elastic Transcoder grants full control over the
* transcoded files and playlists to the owner of the role specified by
* <code>Role</code>, and grants no other permissions to any other user or
* group.</p>
*/
inline void SetPermissions(Aws::Vector<Permission>&& value) { m_permissionsHasBeenSet = true; m_permissions = std::move(value); }
/**
* <p>Optional. The <code>Permissions</code> object specifies which users and/or
* predefined Amazon S3 groups you want to have access to transcoded files and
* playlists, 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.</p>
* <p>If you include <code>Permissions</code>, Elastic Transcoder grants only the
* permissions that you specify. It does not grant full permissions to the owner of
* the role specified by <code>Role</code>. If you want that user to have full
* control, you must explicitly grant full control to the user.</p> <p> If you omit
* <code>Permissions</code>, Elastic Transcoder grants full control over the
* transcoded files and playlists to the owner of the role specified by
* <code>Role</code>, and grants no other permissions to any other user or
* group.</p>
*/
inline PipelineOutputConfig& WithPermissions(const Aws::Vector<Permission>& value) { SetPermissions(value); return *this;}
/**
* <p>Optional. The <code>Permissions</code> object specifies which users and/or
* predefined Amazon S3 groups you want to have access to transcoded files and
* playlists, 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.</p>
* <p>If you include <code>Permissions</code>, Elastic Transcoder grants only the
* permissions that you specify. It does not grant full permissions to the owner of
* the role specified by <code>Role</code>. If you want that user to have full
* control, you must explicitly grant full control to the user.</p> <p> If you omit
* <code>Permissions</code>, Elastic Transcoder grants full control over the
* transcoded files and playlists to the owner of the role specified by
* <code>Role</code>, and grants no other permissions to any other user or
* group.</p>
*/
inline PipelineOutputConfig& WithPermissions(Aws::Vector<Permission>&& value) { SetPermissions(std::move(value)); return *this;}
/**
* <p>Optional. The <code>Permissions</code> object specifies which users and/or
* predefined Amazon S3 groups you want to have access to transcoded files and
* playlists, 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.</p>
* <p>If you include <code>Permissions</code>, Elastic Transcoder grants only the
* permissions that you specify. It does not grant full permissions to the owner of
* the role specified by <code>Role</code>. If you want that user to have full
* control, you must explicitly grant full control to the user.</p> <p> If you omit
* <code>Permissions</code>, Elastic Transcoder grants full control over the
* transcoded files and playlists to the owner of the role specified by
* <code>Role</code>, and grants no other permissions to any other user or
* group.</p>
*/
inline PipelineOutputConfig& AddPermissions(const Permission& value) { m_permissionsHasBeenSet = true; m_permissions.push_back(value); return *this; }
/**
* <p>Optional. The <code>Permissions</code> object specifies which users and/or
* predefined Amazon S3 groups you want to have access to transcoded files and
* playlists, 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.</p>
* <p>If you include <code>Permissions</code>, Elastic Transcoder grants only the
* permissions that you specify. It does not grant full permissions to the owner of
* the role specified by <code>Role</code>. If you want that user to have full
* control, you must explicitly grant full control to the user.</p> <p> If you omit
* <code>Permissions</code>, Elastic Transcoder grants full control over the
* transcoded files and playlists to the owner of the role specified by
* <code>Role</code>, and grants no other permissions to any other user or
* group.</p>
*/
inline PipelineOutputConfig& AddPermissions(Permission&& value) { m_permissionsHasBeenSet = true; m_permissions.push_back(std::move(value)); return *this; }
private:
Aws::String m_bucket;
bool m_bucketHasBeenSet;
Aws::String m_storageClass;
bool m_storageClassHasBeenSet;
Aws::Vector<Permission> m_permissions;
bool m_permissionsHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,472 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The PlayReady DRM settings, if any, that you want Elastic Transcoder to apply
* to the output files associated with this playlist.</p> <p>PlayReady DRM encrypts
* your media files using <code>aes-ctr</code> encryption.</p> <p>If you use DRM
* for an <code>HLSv3</code> playlist, your outputs must have a master
* playlist.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/PlayReadyDrm">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API PlayReadyDrm
{
public:
PlayReadyDrm();
PlayReadyDrm(Aws::Utils::Json::JsonView jsonValue);
PlayReadyDrm& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The type of DRM, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline const Aws::String& GetFormat() const{ return m_format; }
/**
* <p>The type of DRM, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; }
/**
* <p>The type of DRM, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline void SetFormat(const Aws::String& value) { m_formatHasBeenSet = true; m_format = value; }
/**
* <p>The type of DRM, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline void SetFormat(Aws::String&& value) { m_formatHasBeenSet = true; m_format = std::move(value); }
/**
* <p>The type of DRM, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline void SetFormat(const char* value) { m_formatHasBeenSet = true; m_format.assign(value); }
/**
* <p>The type of DRM, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline PlayReadyDrm& WithFormat(const Aws::String& value) { SetFormat(value); return *this;}
/**
* <p>The type of DRM, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline PlayReadyDrm& WithFormat(Aws::String&& value) { SetFormat(std::move(value)); return *this;}
/**
* <p>The type of DRM, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline PlayReadyDrm& WithFormat(const char* value) { SetFormat(value); return *this;}
/**
* <p>The DRM key for your file, provided by your DRM license provider. The key
* must be base64-encoded, and it must be one of the following bit lengths before
* being base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or
* <code>256</code>. </p> <p>The key must also be encrypted by using AWS KMS.</p>
*/
inline const Aws::String& GetKey() const{ return m_key; }
/**
* <p>The DRM key for your file, provided by your DRM license provider. The key
* must be base64-encoded, and it must be one of the following bit lengths before
* being base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or
* <code>256</code>. </p> <p>The key must also be encrypted by using AWS KMS.</p>
*/
inline bool KeyHasBeenSet() const { return m_keyHasBeenSet; }
/**
* <p>The DRM key for your file, provided by your DRM license provider. The key
* must be base64-encoded, and it must be one of the following bit lengths before
* being base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or
* <code>256</code>. </p> <p>The key must also be encrypted by using AWS KMS.</p>
*/
inline void SetKey(const Aws::String& value) { m_keyHasBeenSet = true; m_key = value; }
/**
* <p>The DRM key for your file, provided by your DRM license provider. The key
* must be base64-encoded, and it must be one of the following bit lengths before
* being base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or
* <code>256</code>. </p> <p>The key must also be encrypted by using AWS KMS.</p>
*/
inline void SetKey(Aws::String&& value) { m_keyHasBeenSet = true; m_key = std::move(value); }
/**
* <p>The DRM key for your file, provided by your DRM license provider. The key
* must be base64-encoded, and it must be one of the following bit lengths before
* being base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or
* <code>256</code>. </p> <p>The key must also be encrypted by using AWS KMS.</p>
*/
inline void SetKey(const char* value) { m_keyHasBeenSet = true; m_key.assign(value); }
/**
* <p>The DRM key for your file, provided by your DRM license provider. The key
* must be base64-encoded, and it must be one of the following bit lengths before
* being base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or
* <code>256</code>. </p> <p>The key must also be encrypted by using AWS KMS.</p>
*/
inline PlayReadyDrm& WithKey(const Aws::String& value) { SetKey(value); return *this;}
/**
* <p>The DRM key for your file, provided by your DRM license provider. The key
* must be base64-encoded, and it must be one of the following bit lengths before
* being base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or
* <code>256</code>. </p> <p>The key must also be encrypted by using AWS KMS.</p>
*/
inline PlayReadyDrm& WithKey(Aws::String&& value) { SetKey(std::move(value)); return *this;}
/**
* <p>The DRM key for your file, provided by your DRM license provider. The key
* must be base64-encoded, and it must be one of the following bit lengths before
* being base64-encoded:</p> <p> <code>128</code>, <code>192</code>, or
* <code>256</code>. </p> <p>The key must also be encrypted by using AWS KMS.</p>
*/
inline PlayReadyDrm& WithKey(const char* value) { SetKey(value); return *this;}
/**
* <p>The MD5 digest of the key used for DRM on your file, and that you want
* Elastic Transcoder to use as a checksum to make sure your key was not corrupted
* in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes
* before being base64-encoded.</p>
*/
inline const Aws::String& GetKeyMd5() const{ return m_keyMd5; }
/**
* <p>The MD5 digest of the key used for DRM on your file, and that you want
* Elastic Transcoder to use as a checksum to make sure your key was not corrupted
* in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes
* before being base64-encoded.</p>
*/
inline bool KeyMd5HasBeenSet() const { return m_keyMd5HasBeenSet; }
/**
* <p>The MD5 digest of the key used for DRM on your file, and that you want
* Elastic Transcoder to use as a checksum to make sure your key was not corrupted
* in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes
* before being base64-encoded.</p>
*/
inline void SetKeyMd5(const Aws::String& value) { m_keyMd5HasBeenSet = true; m_keyMd5 = value; }
/**
* <p>The MD5 digest of the key used for DRM on your file, and that you want
* Elastic Transcoder to use as a checksum to make sure your key was not corrupted
* in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes
* before being base64-encoded.</p>
*/
inline void SetKeyMd5(Aws::String&& value) { m_keyMd5HasBeenSet = true; m_keyMd5 = std::move(value); }
/**
* <p>The MD5 digest of the key used for DRM on your file, and that you want
* Elastic Transcoder to use as a checksum to make sure your key was not corrupted
* in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes
* before being base64-encoded.</p>
*/
inline void SetKeyMd5(const char* value) { m_keyMd5HasBeenSet = true; m_keyMd5.assign(value); }
/**
* <p>The MD5 digest of the key used for DRM on your file, and that you want
* Elastic Transcoder to use as a checksum to make sure your key was not corrupted
* in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes
* before being base64-encoded.</p>
*/
inline PlayReadyDrm& WithKeyMd5(const Aws::String& value) { SetKeyMd5(value); return *this;}
/**
* <p>The MD5 digest of the key used for DRM on your file, and that you want
* Elastic Transcoder to use as a checksum to make sure your key was not corrupted
* in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes
* before being base64-encoded.</p>
*/
inline PlayReadyDrm& WithKeyMd5(Aws::String&& value) { SetKeyMd5(std::move(value)); return *this;}
/**
* <p>The MD5 digest of the key used for DRM on your file, and that you want
* Elastic Transcoder to use as a checksum to make sure your key was not corrupted
* in transit. The key MD5 must be base64-encoded, and it must be exactly 16 bytes
* before being base64-encoded.</p>
*/
inline PlayReadyDrm& WithKeyMd5(const char* value) { SetKeyMd5(value); return *this;}
/**
* <p>The ID for your DRM key, so that your DRM license provider knows which key to
* provide.</p> <p>The key ID must be provided in big endian, and Elastic
* Transcoder converts it to little endian before inserting it into the PlayReady
* DRM headers. If you are unsure whether your license server provides your key ID
* in big or little endian, check with your DRM provider.</p>
*/
inline const Aws::String& GetKeyId() const{ return m_keyId; }
/**
* <p>The ID for your DRM key, so that your DRM license provider knows which key to
* provide.</p> <p>The key ID must be provided in big endian, and Elastic
* Transcoder converts it to little endian before inserting it into the PlayReady
* DRM headers. If you are unsure whether your license server provides your key ID
* in big or little endian, check with your DRM provider.</p>
*/
inline bool KeyIdHasBeenSet() const { return m_keyIdHasBeenSet; }
/**
* <p>The ID for your DRM key, so that your DRM license provider knows which key to
* provide.</p> <p>The key ID must be provided in big endian, and Elastic
* Transcoder converts it to little endian before inserting it into the PlayReady
* DRM headers. If you are unsure whether your license server provides your key ID
* in big or little endian, check with your DRM provider.</p>
*/
inline void SetKeyId(const Aws::String& value) { m_keyIdHasBeenSet = true; m_keyId = value; }
/**
* <p>The ID for your DRM key, so that your DRM license provider knows which key to
* provide.</p> <p>The key ID must be provided in big endian, and Elastic
* Transcoder converts it to little endian before inserting it into the PlayReady
* DRM headers. If you are unsure whether your license server provides your key ID
* in big or little endian, check with your DRM provider.</p>
*/
inline void SetKeyId(Aws::String&& value) { m_keyIdHasBeenSet = true; m_keyId = std::move(value); }
/**
* <p>The ID for your DRM key, so that your DRM license provider knows which key to
* provide.</p> <p>The key ID must be provided in big endian, and Elastic
* Transcoder converts it to little endian before inserting it into the PlayReady
* DRM headers. If you are unsure whether your license server provides your key ID
* in big or little endian, check with your DRM provider.</p>
*/
inline void SetKeyId(const char* value) { m_keyIdHasBeenSet = true; m_keyId.assign(value); }
/**
* <p>The ID for your DRM key, so that your DRM license provider knows which key to
* provide.</p> <p>The key ID must be provided in big endian, and Elastic
* Transcoder converts it to little endian before inserting it into the PlayReady
* DRM headers. If you are unsure whether your license server provides your key ID
* in big or little endian, check with your DRM provider.</p>
*/
inline PlayReadyDrm& WithKeyId(const Aws::String& value) { SetKeyId(value); return *this;}
/**
* <p>The ID for your DRM key, so that your DRM license provider knows which key to
* provide.</p> <p>The key ID must be provided in big endian, and Elastic
* Transcoder converts it to little endian before inserting it into the PlayReady
* DRM headers. If you are unsure whether your license server provides your key ID
* in big or little endian, check with your DRM provider.</p>
*/
inline PlayReadyDrm& WithKeyId(Aws::String&& value) { SetKeyId(std::move(value)); return *this;}
/**
* <p>The ID for your DRM key, so that your DRM license provider knows which key to
* provide.</p> <p>The key ID must be provided in big endian, and Elastic
* Transcoder converts it to little endian before inserting it into the PlayReady
* DRM headers. If you are unsure whether your license server provides your key ID
* in big or little endian, check with your DRM provider.</p>
*/
inline PlayReadyDrm& WithKeyId(const char* value) { SetKeyId(value); return *this;}
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you want Elastic Transcoder to use to encrypt your
* files. The initialization vector must be base64-encoded, and it must be exactly
* 8 bytes long before being base64-encoded. If no initialization vector is
* provided, Elastic Transcoder generates one for you.</p>
*/
inline const Aws::String& GetInitializationVector() const{ return m_initializationVector; }
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you want Elastic Transcoder to use to encrypt your
* files. The initialization vector must be base64-encoded, and it must be exactly
* 8 bytes long before being base64-encoded. If no initialization vector is
* provided, Elastic Transcoder generates one for you.</p>
*/
inline bool InitializationVectorHasBeenSet() const { return m_initializationVectorHasBeenSet; }
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you want Elastic Transcoder to use to encrypt your
* files. The initialization vector must be base64-encoded, and it must be exactly
* 8 bytes long before being base64-encoded. If no initialization vector is
* provided, Elastic Transcoder generates one for you.</p>
*/
inline void SetInitializationVector(const Aws::String& value) { m_initializationVectorHasBeenSet = true; m_initializationVector = value; }
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you want Elastic Transcoder to use to encrypt your
* files. The initialization vector must be base64-encoded, and it must be exactly
* 8 bytes long before being base64-encoded. If no initialization vector is
* provided, Elastic Transcoder generates one for you.</p>
*/
inline void SetInitializationVector(Aws::String&& value) { m_initializationVectorHasBeenSet = true; m_initializationVector = std::move(value); }
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you want Elastic Transcoder to use to encrypt your
* files. The initialization vector must be base64-encoded, and it must be exactly
* 8 bytes long before being base64-encoded. If no initialization vector is
* provided, Elastic Transcoder generates one for you.</p>
*/
inline void SetInitializationVector(const char* value) { m_initializationVectorHasBeenSet = true; m_initializationVector.assign(value); }
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you want Elastic Transcoder to use to encrypt your
* files. The initialization vector must be base64-encoded, and it must be exactly
* 8 bytes long before being base64-encoded. If no initialization vector is
* provided, Elastic Transcoder generates one for you.</p>
*/
inline PlayReadyDrm& WithInitializationVector(const Aws::String& value) { SetInitializationVector(value); return *this;}
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you want Elastic Transcoder to use to encrypt your
* files. The initialization vector must be base64-encoded, and it must be exactly
* 8 bytes long before being base64-encoded. If no initialization vector is
* provided, Elastic Transcoder generates one for you.</p>
*/
inline PlayReadyDrm& WithInitializationVector(Aws::String&& value) { SetInitializationVector(std::move(value)); return *this;}
/**
* <p>The series of random bits created by a random bit generator, unique for every
* encryption operation, that you want Elastic Transcoder to use to encrypt your
* files. The initialization vector must be base64-encoded, and it must be exactly
* 8 bytes long before being base64-encoded. If no initialization vector is
* provided, Elastic Transcoder generates one for you.</p>
*/
inline PlayReadyDrm& WithInitializationVector(const char* value) { SetInitializationVector(value); return *this;}
/**
* <p>The location of the license key required to play DRM content. The URL must be
* an absolute path, and is referenced by the PlayReady header. The PlayReady
* header is referenced in the protection header of the client manifest for Smooth
* Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for
* HLS playlist outputs. An example URL looks like this:
* <code>https://www.example.com/exampleKey/</code> </p>
*/
inline const Aws::String& GetLicenseAcquisitionUrl() const{ return m_licenseAcquisitionUrl; }
/**
* <p>The location of the license key required to play DRM content. The URL must be
* an absolute path, and is referenced by the PlayReady header. The PlayReady
* header is referenced in the protection header of the client manifest for Smooth
* Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for
* HLS playlist outputs. An example URL looks like this:
* <code>https://www.example.com/exampleKey/</code> </p>
*/
inline bool LicenseAcquisitionUrlHasBeenSet() const { return m_licenseAcquisitionUrlHasBeenSet; }
/**
* <p>The location of the license key required to play DRM content. The URL must be
* an absolute path, and is referenced by the PlayReady header. The PlayReady
* header is referenced in the protection header of the client manifest for Smooth
* Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for
* HLS playlist outputs. An example URL looks like this:
* <code>https://www.example.com/exampleKey/</code> </p>
*/
inline void SetLicenseAcquisitionUrl(const Aws::String& value) { m_licenseAcquisitionUrlHasBeenSet = true; m_licenseAcquisitionUrl = value; }
/**
* <p>The location of the license key required to play DRM content. The URL must be
* an absolute path, and is referenced by the PlayReady header. The PlayReady
* header is referenced in the protection header of the client manifest for Smooth
* Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for
* HLS playlist outputs. An example URL looks like this:
* <code>https://www.example.com/exampleKey/</code> </p>
*/
inline void SetLicenseAcquisitionUrl(Aws::String&& value) { m_licenseAcquisitionUrlHasBeenSet = true; m_licenseAcquisitionUrl = std::move(value); }
/**
* <p>The location of the license key required to play DRM content. The URL must be
* an absolute path, and is referenced by the PlayReady header. The PlayReady
* header is referenced in the protection header of the client manifest for Smooth
* Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for
* HLS playlist outputs. An example URL looks like this:
* <code>https://www.example.com/exampleKey/</code> </p>
*/
inline void SetLicenseAcquisitionUrl(const char* value) { m_licenseAcquisitionUrlHasBeenSet = true; m_licenseAcquisitionUrl.assign(value); }
/**
* <p>The location of the license key required to play DRM content. The URL must be
* an absolute path, and is referenced by the PlayReady header. The PlayReady
* header is referenced in the protection header of the client manifest for Smooth
* Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for
* HLS playlist outputs. An example URL looks like this:
* <code>https://www.example.com/exampleKey/</code> </p>
*/
inline PlayReadyDrm& WithLicenseAcquisitionUrl(const Aws::String& value) { SetLicenseAcquisitionUrl(value); return *this;}
/**
* <p>The location of the license key required to play DRM content. The URL must be
* an absolute path, and is referenced by the PlayReady header. The PlayReady
* header is referenced in the protection header of the client manifest for Smooth
* Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for
* HLS playlist outputs. An example URL looks like this:
* <code>https://www.example.com/exampleKey/</code> </p>
*/
inline PlayReadyDrm& WithLicenseAcquisitionUrl(Aws::String&& value) { SetLicenseAcquisitionUrl(std::move(value)); return *this;}
/**
* <p>The location of the license key required to play DRM content. The URL must be
* an absolute path, and is referenced by the PlayReady header. The PlayReady
* header is referenced in the protection header of the client manifest for Smooth
* Streaming outputs, and in the EXT-X-DXDRM and EXT-XDXDRMINFO metadata tags for
* HLS playlist outputs. An example URL looks like this:
* <code>https://www.example.com/exampleKey/</code> </p>
*/
inline PlayReadyDrm& WithLicenseAcquisitionUrl(const char* value) { SetLicenseAcquisitionUrl(value); return *this;}
private:
Aws::String m_format;
bool m_formatHasBeenSet;
Aws::String m_key;
bool m_keyHasBeenSet;
Aws::String m_keyMd5;
bool m_keyMd5HasBeenSet;
Aws::String m_keyId;
bool m_keyIdHasBeenSet;
Aws::String m_initializationVector;
bool m_initializationVectorHasBeenSet;
Aws::String m_licenseAcquisitionUrl;
bool m_licenseAcquisitionUrlHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,671 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/elastictranscoder/model/HlsContentProtection.h>
#include <aws/elastictranscoder/model/PlayReadyDrm.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p> Use Only for Fragmented MP4 or MPEG-TS Outputs. If you specify a preset for
* which the value of Container is <code>fmp4</code> (Fragmented MP4) or
* <code>ts</code> (MPEG-TS), Playlists contains information about the master
* playlists that you want Elastic Transcoder to create. We recommend that you
* create only one master playlist per output format. The maximum number of master
* playlists in a job is 30. </p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/Playlist">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API Playlist
{
public:
Playlist();
Playlist(Aws::Utils::Json::JsonView jsonValue);
Playlist& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline Playlist& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline Playlist& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name that you want Elastic Transcoder to assign to the master playlist,
* for example, nyc-vacation.m3u8. If the name includes a <code>/</code> character,
* the section of the name before the last <code>/</code> must be identical for all
* <code>Name</code> objects. If you create more than one master playlist, the
* values of all <code>Name</code> objects must be unique.</p> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name
* (<code>.m3u8</code> for <code>HLSv3</code> and <code>HLSv4</code> playlists, and
* <code>.ism</code> and <code>.ismc</code> for <code>Smooth</code> playlists). If
* you include a file extension in <code>Name</code>, the file name will have two
* extensions.</p>
*/
inline Playlist& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline const Aws::String& GetFormat() const{ return m_format; }
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; }
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline void SetFormat(const Aws::String& value) { m_formatHasBeenSet = true; m_format = value; }
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline void SetFormat(Aws::String&& value) { m_formatHasBeenSet = true; m_format = std::move(value); }
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline void SetFormat(const char* value) { m_formatHasBeenSet = true; m_format.assign(value); }
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline Playlist& WithFormat(const Aws::String& value) { SetFormat(value); return *this;}
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline Playlist& WithFormat(Aws::String&& value) { SetFormat(std::move(value)); return *this;}
/**
* <p>The format of the output playlist. Valid formats include <code>HLSv3</code>,
* <code>HLSv4</code>, and <code>Smooth</code>.</p>
*/
inline Playlist& WithFormat(const char* value) { SetFormat(value); return *this;}
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the Outputs:Key object.</p> <ul> <li> <p>If your output is not
* <code>HLS</code> or does not have a segment duration set, the name of the output
* file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline const Aws::Vector<Aws::String>& GetOutputKeys() const{ return m_outputKeys; }
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the Outputs:Key object.</p> <ul> <li> <p>If your output is not
* <code>HLS</code> or does not have a segment duration set, the name of the output
* file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline bool OutputKeysHasBeenSet() const { return m_outputKeysHasBeenSet; }
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the Outputs:Key object.</p> <ul> <li> <p>If your output is not
* <code>HLS</code> or does not have a segment duration set, the name of the output
* file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline void SetOutputKeys(const Aws::Vector<Aws::String>& value) { m_outputKeysHasBeenSet = true; m_outputKeys = value; }
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the Outputs:Key object.</p> <ul> <li> <p>If your output is not
* <code>HLS</code> or does not have a segment duration set, the name of the output
* file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline void SetOutputKeys(Aws::Vector<Aws::String>&& value) { m_outputKeysHasBeenSet = true; m_outputKeys = std::move(value); }
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the Outputs:Key object.</p> <ul> <li> <p>If your output is not
* <code>HLS</code> or does not have a segment duration set, the name of the output
* file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline Playlist& WithOutputKeys(const Aws::Vector<Aws::String>& value) { SetOutputKeys(value); return *this;}
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the Outputs:Key object.</p> <ul> <li> <p>If your output is not
* <code>HLS</code> or does not have a segment duration set, the name of the output
* file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline Playlist& WithOutputKeys(Aws::Vector<Aws::String>&& value) { SetOutputKeys(std::move(value)); return *this;}
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the Outputs:Key object.</p> <ul> <li> <p>If your output is not
* <code>HLS</code> or does not have a segment duration set, the name of the output
* file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline Playlist& AddOutputKeys(const Aws::String& value) { m_outputKeysHasBeenSet = true; m_outputKeys.push_back(value); return *this; }
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the Outputs:Key object.</p> <ul> <li> <p>If your output is not
* <code>HLS</code> or does not have a segment duration set, the name of the output
* file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline Playlist& AddOutputKeys(Aws::String&& value) { m_outputKeysHasBeenSet = true; m_outputKeys.push_back(std::move(value)); return *this; }
/**
* <p>For each output in this job that you want to include in a master playlist,
* the value of the Outputs:Key object.</p> <ul> <li> <p>If your output is not
* <code>HLS</code> or does not have a segment duration set, the name of the output
* file is a concatenation of <code>OutputKeyPrefix</code> and
* <code>Outputs:Key</code>:</p> <p>OutputKeyPrefix<code>Outputs:Key</code> </p>
* </li> <li> <p>If your output is <code>HLSv3</code> and has a segment duration
* set, or is not included in a playlist, Elastic Transcoder creates an output
* playlist file with a file extension of <code>.m3u8</code>, and a series of
* <code>.ts</code> files that include a five-digit sequential counter beginning
* with 00000:</p> <p>OutputKeyPrefix<code>Outputs:Key</code>.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>00000.ts</p> </li> <li> <p>If your
* output is <code>HLSv4</code>, has a segment duration set, and is included in an
* <code>HLSv4</code> playlist, Elastic Transcoder creates an output playlist file
* with a file extension of <code>_v4.m3u8</code>. If the output is video, Elastic
* Transcoder also creates an output file with an extension of
* <code>_iframe.m3u8</code>:</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_v4.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>_iframe.m3u8</p>
* <p>OutputKeyPrefix<code>Outputs:Key</code>.ts</p> </li> </ul> <p>Elastic
* Transcoder automatically appends the relevant file extension to the file name.
* If you include a file extension in Output Key, the file name will have two
* extensions.</p> <p>If you include more than one output in a playlist, any
* segment duration settings, clip settings, or caption settings must be the same
* for all outputs in the playlist. For <code>Smooth</code> playlists, the
* <code>Audio:Profile</code>, <code>Video:Profile</code>, and
* <code>Video:FrameRate</code> to <code>Video:KeyframesMaxDist</code> ratio must
* be the same for all outputs.</p>
*/
inline Playlist& AddOutputKeys(const char* value) { m_outputKeysHasBeenSet = true; m_outputKeys.push_back(value); return *this; }
/**
* <p>The HLS content protection settings, if any, that you want Elastic Transcoder
* to apply to the output files associated with this playlist.</p>
*/
inline const HlsContentProtection& GetHlsContentProtection() const{ return m_hlsContentProtection; }
/**
* <p>The HLS content protection settings, if any, that you want Elastic Transcoder
* to apply to the output files associated with this playlist.</p>
*/
inline bool HlsContentProtectionHasBeenSet() const { return m_hlsContentProtectionHasBeenSet; }
/**
* <p>The HLS content protection settings, if any, that you want Elastic Transcoder
* to apply to the output files associated with this playlist.</p>
*/
inline void SetHlsContentProtection(const HlsContentProtection& value) { m_hlsContentProtectionHasBeenSet = true; m_hlsContentProtection = value; }
/**
* <p>The HLS content protection settings, if any, that you want Elastic Transcoder
* to apply to the output files associated with this playlist.</p>
*/
inline void SetHlsContentProtection(HlsContentProtection&& value) { m_hlsContentProtectionHasBeenSet = true; m_hlsContentProtection = std::move(value); }
/**
* <p>The HLS content protection settings, if any, that you want Elastic Transcoder
* to apply to the output files associated with this playlist.</p>
*/
inline Playlist& WithHlsContentProtection(const HlsContentProtection& value) { SetHlsContentProtection(value); return *this;}
/**
* <p>The HLS content protection settings, if any, that you want Elastic Transcoder
* to apply to the output files associated with this playlist.</p>
*/
inline Playlist& WithHlsContentProtection(HlsContentProtection&& value) { SetHlsContentProtection(std::move(value)); return *this;}
/**
* <p>The DRM settings, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline const PlayReadyDrm& GetPlayReadyDrm() const{ return m_playReadyDrm; }
/**
* <p>The DRM settings, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline bool PlayReadyDrmHasBeenSet() const { return m_playReadyDrmHasBeenSet; }
/**
* <p>The DRM settings, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline void SetPlayReadyDrm(const PlayReadyDrm& value) { m_playReadyDrmHasBeenSet = true; m_playReadyDrm = value; }
/**
* <p>The DRM settings, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline void SetPlayReadyDrm(PlayReadyDrm&& value) { m_playReadyDrmHasBeenSet = true; m_playReadyDrm = std::move(value); }
/**
* <p>The DRM settings, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline Playlist& WithPlayReadyDrm(const PlayReadyDrm& value) { SetPlayReadyDrm(value); return *this;}
/**
* <p>The DRM settings, if any, that you want Elastic Transcoder to apply to the
* output files associated with this playlist.</p>
*/
inline Playlist& WithPlayReadyDrm(PlayReadyDrm&& value) { SetPlayReadyDrm(std::move(value)); return *this;}
/**
* <p>The status of the job with which the playlist is associated.</p>
*/
inline const Aws::String& GetStatus() const{ return m_status; }
/**
* <p>The status of the job with which the playlist is associated.</p>
*/
inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
/**
* <p>The status of the job with which the playlist is associated.</p>
*/
inline void SetStatus(const Aws::String& value) { m_statusHasBeenSet = true; m_status = value; }
/**
* <p>The status of the job with which the playlist is associated.</p>
*/
inline void SetStatus(Aws::String&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
/**
* <p>The status of the job with which the playlist is associated.</p>
*/
inline void SetStatus(const char* value) { m_statusHasBeenSet = true; m_status.assign(value); }
/**
* <p>The status of the job with which the playlist is associated.</p>
*/
inline Playlist& WithStatus(const Aws::String& value) { SetStatus(value); return *this;}
/**
* <p>The status of the job with which the playlist is associated.</p>
*/
inline Playlist& WithStatus(Aws::String&& value) { SetStatus(std::move(value)); return *this;}
/**
* <p>The status of the job with which the playlist is associated.</p>
*/
inline Playlist& WithStatus(const char* value) { SetStatus(value); return *this;}
/**
* <p>Information that further explains the status.</p>
*/
inline const Aws::String& GetStatusDetail() const{ return m_statusDetail; }
/**
* <p>Information that further explains the status.</p>
*/
inline bool StatusDetailHasBeenSet() const { return m_statusDetailHasBeenSet; }
/**
* <p>Information that further explains the status.</p>
*/
inline void SetStatusDetail(const Aws::String& value) { m_statusDetailHasBeenSet = true; m_statusDetail = value; }
/**
* <p>Information that further explains the status.</p>
*/
inline void SetStatusDetail(Aws::String&& value) { m_statusDetailHasBeenSet = true; m_statusDetail = std::move(value); }
/**
* <p>Information that further explains the status.</p>
*/
inline void SetStatusDetail(const char* value) { m_statusDetailHasBeenSet = true; m_statusDetail.assign(value); }
/**
* <p>Information that further explains the status.</p>
*/
inline Playlist& WithStatusDetail(const Aws::String& value) { SetStatusDetail(value); return *this;}
/**
* <p>Information that further explains the status.</p>
*/
inline Playlist& WithStatusDetail(Aws::String&& value) { SetStatusDetail(std::move(value)); return *this;}
/**
* <p>Information that further explains the status.</p>
*/
inline Playlist& WithStatusDetail(const char* value) { SetStatusDetail(value); return *this;}
private:
Aws::String m_name;
bool m_nameHasBeenSet;
Aws::String m_format;
bool m_formatHasBeenSet;
Aws::Vector<Aws::String> m_outputKeys;
bool m_outputKeysHasBeenSet;
HlsContentProtection m_hlsContentProtection;
bool m_hlsContentProtectionHasBeenSet;
PlayReadyDrm m_playReadyDrm;
bool m_playReadyDrmHasBeenSet;
Aws::String m_status;
bool m_statusHasBeenSet;
Aws::String m_statusDetail;
bool m_statusDetailHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,484 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/elastictranscoder/model/AudioParameters.h>
#include <aws/elastictranscoder/model/VideoParameters.h>
#include <aws/elastictranscoder/model/Thumbnails.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>Presets are templates that contain most of the settings for transcoding media
* files from one format to another. Elastic Transcoder includes some default
* presets for common formats, for example, several iPod and iPhone versions. You
* can also create your own presets for formats that aren't included among the
* default presets. You specify which preset you want to use when you create a
* job.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/Preset">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API Preset
{
public:
Preset();
Preset(Aws::Utils::Json::JsonView jsonValue);
Preset& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>Identifier for the new preset. You use this value to get settings for the
* preset or to delete it.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>Identifier for the new preset. You use this value to get settings for the
* preset or to delete it.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>Identifier for the new preset. You use this value to get settings for the
* preset or to delete it.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>Identifier for the new preset. You use this value to get settings for the
* preset or to delete it.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>Identifier for the new preset. You use this value to get settings for the
* preset or to delete it.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>Identifier for the new preset. You use this value to get settings for the
* preset or to delete it.</p>
*/
inline Preset& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>Identifier for the new preset. You use this value to get settings for the
* preset or to delete it.</p>
*/
inline Preset& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>Identifier for the new preset. You use this value to get settings for the
* preset or to delete it.</p>
*/
inline Preset& WithId(const char* value) { SetId(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) for the preset.</p>
*/
inline const Aws::String& GetArn() const{ return m_arn; }
/**
* <p>The Amazon Resource Name (ARN) for the preset.</p>
*/
inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; }
/**
* <p>The Amazon Resource Name (ARN) for the preset.</p>
*/
inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; }
/**
* <p>The Amazon Resource Name (ARN) for the preset.</p>
*/
inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); }
/**
* <p>The Amazon Resource Name (ARN) for the preset.</p>
*/
inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); }
/**
* <p>The Amazon Resource Name (ARN) for the preset.</p>
*/
inline Preset& WithArn(const Aws::String& value) { SetArn(value); return *this;}
/**
* <p>The Amazon Resource Name (ARN) for the preset.</p>
*/
inline Preset& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;}
/**
* <p>The Amazon Resource Name (ARN) for the preset.</p>
*/
inline Preset& WithArn(const char* value) { SetArn(value); return *this;}
/**
* <p>The name of the preset.</p>
*/
inline const Aws::String& GetName() const{ return m_name; }
/**
* <p>The name of the preset.</p>
*/
inline bool NameHasBeenSet() const { return m_nameHasBeenSet; }
/**
* <p>The name of the preset.</p>
*/
inline void SetName(const Aws::String& value) { m_nameHasBeenSet = true; m_name = value; }
/**
* <p>The name of the preset.</p>
*/
inline void SetName(Aws::String&& value) { m_nameHasBeenSet = true; m_name = std::move(value); }
/**
* <p>The name of the preset.</p>
*/
inline void SetName(const char* value) { m_nameHasBeenSet = true; m_name.assign(value); }
/**
* <p>The name of the preset.</p>
*/
inline Preset& WithName(const Aws::String& value) { SetName(value); return *this;}
/**
* <p>The name of the preset.</p>
*/
inline Preset& WithName(Aws::String&& value) { SetName(std::move(value)); return *this;}
/**
* <p>The name of the preset.</p>
*/
inline Preset& WithName(const char* value) { SetName(value); return *this;}
/**
* <p>A description of the preset.</p>
*/
inline const Aws::String& GetDescription() const{ return m_description; }
/**
* <p>A description of the preset.</p>
*/
inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
/**
* <p>A description of the preset.</p>
*/
inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
/**
* <p>A description of the preset.</p>
*/
inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
/**
* <p>A description of the preset.</p>
*/
inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
/**
* <p>A description of the preset.</p>
*/
inline Preset& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
/**
* <p>A description of the preset.</p>
*/
inline Preset& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
/**
* <p>A description of the preset.</p>
*/
inline Preset& WithDescription(const char* value) { SetDescription(value); return *this;}
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline const Aws::String& GetContainer() const{ return m_container; }
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline bool ContainerHasBeenSet() const { return m_containerHasBeenSet; }
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline void SetContainer(const Aws::String& value) { m_containerHasBeenSet = true; m_container = value; }
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline void SetContainer(Aws::String&& value) { m_containerHasBeenSet = true; m_container = std::move(value); }
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline void SetContainer(const char* value) { m_containerHasBeenSet = true; m_container.assign(value); }
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline Preset& WithContainer(const Aws::String& value) { SetContainer(value); return *this;}
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline Preset& WithContainer(Aws::String&& value) { SetContainer(std::move(value)); return *this;}
/**
* <p>The container type for the output file. Valid values include
* <code>flac</code>, <code>flv</code>, <code>fmp4</code>, <code>gif</code>,
* <code>mp3</code>, <code>mp4</code>, <code>mpg</code>, <code>mxf</code>,
* <code>oga</code>, <code>ogg</code>, <code>ts</code>, and <code>webm</code>.</p>
*/
inline Preset& WithContainer(const char* value) { SetContainer(value); return *this;}
/**
* <p>A section of the response body that provides information about the audio
* preset values.</p>
*/
inline const AudioParameters& GetAudio() const{ return m_audio; }
/**
* <p>A section of the response body that provides information about the audio
* preset values.</p>
*/
inline bool AudioHasBeenSet() const { return m_audioHasBeenSet; }
/**
* <p>A section of the response body that provides information about the audio
* preset values.</p>
*/
inline void SetAudio(const AudioParameters& value) { m_audioHasBeenSet = true; m_audio = value; }
/**
* <p>A section of the response body that provides information about the audio
* preset values.</p>
*/
inline void SetAudio(AudioParameters&& value) { m_audioHasBeenSet = true; m_audio = std::move(value); }
/**
* <p>A section of the response body that provides information about the audio
* preset values.</p>
*/
inline Preset& WithAudio(const AudioParameters& value) { SetAudio(value); return *this;}
/**
* <p>A section of the response body that provides information about the audio
* preset values.</p>
*/
inline Preset& WithAudio(AudioParameters&& value) { SetAudio(std::move(value)); return *this;}
/**
* <p>A section of the response body that provides information about the video
* preset values.</p>
*/
inline const VideoParameters& GetVideo() const{ return m_video; }
/**
* <p>A section of the response body that provides information about the video
* preset values.</p>
*/
inline bool VideoHasBeenSet() const { return m_videoHasBeenSet; }
/**
* <p>A section of the response body that provides information about the video
* preset values.</p>
*/
inline void SetVideo(const VideoParameters& value) { m_videoHasBeenSet = true; m_video = value; }
/**
* <p>A section of the response body that provides information about the video
* preset values.</p>
*/
inline void SetVideo(VideoParameters&& value) { m_videoHasBeenSet = true; m_video = std::move(value); }
/**
* <p>A section of the response body that provides information about the video
* preset values.</p>
*/
inline Preset& WithVideo(const VideoParameters& value) { SetVideo(value); return *this;}
/**
* <p>A section of the response body that provides information about the video
* preset values.</p>
*/
inline Preset& WithVideo(VideoParameters&& value) { SetVideo(std::move(value)); return *this;}
/**
* <p>A section of the response body that provides information about the thumbnail
* preset values, if any.</p>
*/
inline const Thumbnails& GetThumbnails() const{ return m_thumbnails; }
/**
* <p>A section of the response body that provides information about the thumbnail
* preset values, if any.</p>
*/
inline bool ThumbnailsHasBeenSet() const { return m_thumbnailsHasBeenSet; }
/**
* <p>A section of the response body that provides information about the thumbnail
* preset values, if any.</p>
*/
inline void SetThumbnails(const Thumbnails& value) { m_thumbnailsHasBeenSet = true; m_thumbnails = value; }
/**
* <p>A section of the response body that provides information about the thumbnail
* preset values, if any.</p>
*/
inline void SetThumbnails(Thumbnails&& value) { m_thumbnailsHasBeenSet = true; m_thumbnails = std::move(value); }
/**
* <p>A section of the response body that provides information about the thumbnail
* preset values, if any.</p>
*/
inline Preset& WithThumbnails(const Thumbnails& value) { SetThumbnails(value); return *this;}
/**
* <p>A section of the response body that provides information about the thumbnail
* preset values, if any.</p>
*/
inline Preset& WithThumbnails(Thumbnails&& value) { SetThumbnails(std::move(value)); return *this;}
/**
* <p>Whether the preset is a default preset provided by Elastic Transcoder
* (<code>System</code>) or a preset that you have defined
* (<code>Custom</code>).</p>
*/
inline const Aws::String& GetType() const{ return m_type; }
/**
* <p>Whether the preset is a default preset provided by Elastic Transcoder
* (<code>System</code>) or a preset that you have defined
* (<code>Custom</code>).</p>
*/
inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; }
/**
* <p>Whether the preset is a default preset provided by Elastic Transcoder
* (<code>System</code>) or a preset that you have defined
* (<code>Custom</code>).</p>
*/
inline void SetType(const Aws::String& value) { m_typeHasBeenSet = true; m_type = value; }
/**
* <p>Whether the preset is a default preset provided by Elastic Transcoder
* (<code>System</code>) or a preset that you have defined
* (<code>Custom</code>).</p>
*/
inline void SetType(Aws::String&& value) { m_typeHasBeenSet = true; m_type = std::move(value); }
/**
* <p>Whether the preset is a default preset provided by Elastic Transcoder
* (<code>System</code>) or a preset that you have defined
* (<code>Custom</code>).</p>
*/
inline void SetType(const char* value) { m_typeHasBeenSet = true; m_type.assign(value); }
/**
* <p>Whether the preset is a default preset provided by Elastic Transcoder
* (<code>System</code>) or a preset that you have defined
* (<code>Custom</code>).</p>
*/
inline Preset& WithType(const Aws::String& value) { SetType(value); return *this;}
/**
* <p>Whether the preset is a default preset provided by Elastic Transcoder
* (<code>System</code>) or a preset that you have defined
* (<code>Custom</code>).</p>
*/
inline Preset& WithType(Aws::String&& value) { SetType(std::move(value)); return *this;}
/**
* <p>Whether the preset is a default preset provided by Elastic Transcoder
* (<code>System</code>) or a preset that you have defined
* (<code>Custom</code>).</p>
*/
inline Preset& WithType(const char* value) { SetType(value); return *this;}
private:
Aws::String m_id;
bool m_idHasBeenSet;
Aws::String m_arn;
bool m_arnHasBeenSet;
Aws::String m_name;
bool m_nameHasBeenSet;
Aws::String m_description;
bool m_descriptionHasBeenSet;
Aws::String m_container;
bool m_containerHasBeenSet;
AudioParameters m_audio;
bool m_audioHasBeenSet;
VideoParameters m_video;
bool m_videoHasBeenSet;
Thumbnails m_thumbnails;
bool m_thumbnailsHasBeenSet;
Aws::String m_type;
bool m_typeHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,86 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/ElasticTranscoderRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>ReadJobRequest</code> structure.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ReadJobRequest">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API ReadJobRequest : public ElasticTranscoderRequest
{
public:
ReadJobRequest();
// 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 "ReadJob"; }
Aws::String SerializePayload() const override;
/**
* <p>The identifier of the job for which you want to get detailed information.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The identifier of the job for which you want to get detailed information.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The identifier of the job for which you want to get detailed information.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The identifier of the job for which you want to get detailed information.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The identifier of the job for which you want to get detailed information.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The identifier of the job for which you want to get detailed information.</p>
*/
inline ReadJobRequest& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The identifier of the job for which you want to get detailed information.</p>
*/
inline ReadJobRequest& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The identifier of the job for which you want to get detailed information.</p>
*/
inline ReadJobRequest& WithId(const char* value) { SetId(value); return *this;}
private:
Aws::String m_id;
bool m_idHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,72 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/model/Job.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>ReadJobResponse</code> structure.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ReadJobResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API ReadJobResult
{
public:
ReadJobResult();
ReadJobResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ReadJobResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A section of the response body that provides information about the job.</p>
*/
inline const Job& GetJob() const{ return m_job; }
/**
* <p>A section of the response body that provides information about the job.</p>
*/
inline void SetJob(const Job& value) { m_job = value; }
/**
* <p>A section of the response body that provides information about the job.</p>
*/
inline void SetJob(Job&& value) { m_job = std::move(value); }
/**
* <p>A section of the response body that provides information about the job.</p>
*/
inline ReadJobResult& WithJob(const Job& value) { SetJob(value); return *this;}
/**
* <p>A section of the response body that provides information about the job.</p>
*/
inline ReadJobResult& WithJob(Job&& value) { SetJob(std::move(value)); return *this;}
private:
Job m_job;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,86 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/ElasticTranscoderRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>ReadPipelineRequest</code> structure.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ReadPipelineRequest">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API ReadPipelineRequest : public ElasticTranscoderRequest
{
public:
ReadPipelineRequest();
// 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 "ReadPipeline"; }
Aws::String SerializePayload() const override;
/**
* <p>The identifier of the pipeline to read.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The identifier of the pipeline to read.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The identifier of the pipeline to read.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The identifier of the pipeline to read.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The identifier of the pipeline to read.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The identifier of the pipeline to read.</p>
*/
inline ReadPipelineRequest& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The identifier of the pipeline to read.</p>
*/
inline ReadPipelineRequest& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The identifier of the pipeline to read.</p>
*/
inline ReadPipelineRequest& WithId(const char* value) { SetId(value); return *this;}
private:
Aws::String m_id;
bool m_idHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,139 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/model/Pipeline.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/elastictranscoder/model/Warning.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>ReadPipelineResponse</code> structure.</p><p><h3>See Also:</h3>
* <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ReadPipelineResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API ReadPipelineResult
{
public:
ReadPipelineResult();
ReadPipelineResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ReadPipelineResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A section of the response body that provides information about the
* pipeline.</p>
*/
inline const Pipeline& GetPipeline() const{ return m_pipeline; }
/**
* <p>A section of the response body that provides information about the
* pipeline.</p>
*/
inline void SetPipeline(const Pipeline& value) { m_pipeline = value; }
/**
* <p>A section of the response body that provides information about the
* pipeline.</p>
*/
inline void SetPipeline(Pipeline&& value) { m_pipeline = std::move(value); }
/**
* <p>A section of the response body that provides information about the
* pipeline.</p>
*/
inline ReadPipelineResult& WithPipeline(const Pipeline& value) { SetPipeline(value); return *this;}
/**
* <p>A section of the response body that provides information about the
* pipeline.</p>
*/
inline ReadPipelineResult& WithPipeline(Pipeline&& value) { SetPipeline(std::move(value)); return *this;}
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline const Aws::Vector<Warning>& GetWarnings() const{ return m_warnings; }
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline void SetWarnings(const Aws::Vector<Warning>& value) { m_warnings = value; }
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline void SetWarnings(Aws::Vector<Warning>&& value) { m_warnings = std::move(value); }
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline ReadPipelineResult& WithWarnings(const Aws::Vector<Warning>& value) { SetWarnings(value); return *this;}
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline ReadPipelineResult& WithWarnings(Aws::Vector<Warning>&& value) { SetWarnings(std::move(value)); return *this;}
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline ReadPipelineResult& AddWarnings(const Warning& value) { m_warnings.push_back(value); return *this; }
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline ReadPipelineResult& AddWarnings(Warning&& value) { m_warnings.push_back(std::move(value)); return *this; }
private:
Pipeline m_pipeline;
Aws::Vector<Warning> m_warnings;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,94 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/ElasticTranscoderRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>ReadPresetRequest</code> structure.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ReadPresetRequest">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API ReadPresetRequest : public ElasticTranscoderRequest
{
public:
ReadPresetRequest();
// 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 "ReadPreset"; }
Aws::String SerializePayload() const override;
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline ReadPresetRequest& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline ReadPresetRequest& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The identifier of the preset for which you want to get detailed
* information.</p>
*/
inline ReadPresetRequest& WithId(const char* value) { SetId(value); return *this;}
private:
Aws::String m_id;
bool m_idHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,77 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/model/Preset.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>ReadPresetResponse</code> structure.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/ReadPresetResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API ReadPresetResult
{
public:
ReadPresetResult();
ReadPresetResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
ReadPresetResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A section of the response body that provides information about the
* preset.</p>
*/
inline const Preset& GetPreset() const{ return m_preset; }
/**
* <p>A section of the response body that provides information about the
* preset.</p>
*/
inline void SetPreset(const Preset& value) { m_preset = value; }
/**
* <p>A section of the response body that provides information about the
* preset.</p>
*/
inline void SetPreset(Preset&& value) { m_preset = std::move(value); }
/**
* <p>A section of the response body that provides information about the
* preset.</p>
*/
inline ReadPresetResult& WithPreset(const Preset& value) { SetPreset(value); return *this;}
/**
* <p>A section of the response body that provides information about the
* preset.</p>
*/
inline ReadPresetResult& WithPreset(Preset&& value) { SetPreset(std::move(value)); return *this;}
private:
Preset m_preset;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,804 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>Thumbnails for videos.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/Thumbnails">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API Thumbnails
{
public:
Thumbnails();
Thumbnails(Aws::Utils::Json::JsonView jsonValue);
Thumbnails& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The format of thumbnails, if any. Valid values are <code>jpg</code> and
* <code>png</code>. </p> <p>You specify whether you want Elastic Transcoder to
* create thumbnails when you create a job.</p>
*/
inline const Aws::String& GetFormat() const{ return m_format; }
/**
* <p>The format of thumbnails, if any. Valid values are <code>jpg</code> and
* <code>png</code>. </p> <p>You specify whether you want Elastic Transcoder to
* create thumbnails when you create a job.</p>
*/
inline bool FormatHasBeenSet() const { return m_formatHasBeenSet; }
/**
* <p>The format of thumbnails, if any. Valid values are <code>jpg</code> and
* <code>png</code>. </p> <p>You specify whether you want Elastic Transcoder to
* create thumbnails when you create a job.</p>
*/
inline void SetFormat(const Aws::String& value) { m_formatHasBeenSet = true; m_format = value; }
/**
* <p>The format of thumbnails, if any. Valid values are <code>jpg</code> and
* <code>png</code>. </p> <p>You specify whether you want Elastic Transcoder to
* create thumbnails when you create a job.</p>
*/
inline void SetFormat(Aws::String&& value) { m_formatHasBeenSet = true; m_format = std::move(value); }
/**
* <p>The format of thumbnails, if any. Valid values are <code>jpg</code> and
* <code>png</code>. </p> <p>You specify whether you want Elastic Transcoder to
* create thumbnails when you create a job.</p>
*/
inline void SetFormat(const char* value) { m_formatHasBeenSet = true; m_format.assign(value); }
/**
* <p>The format of thumbnails, if any. Valid values are <code>jpg</code> and
* <code>png</code>. </p> <p>You specify whether you want Elastic Transcoder to
* create thumbnails when you create a job.</p>
*/
inline Thumbnails& WithFormat(const Aws::String& value) { SetFormat(value); return *this;}
/**
* <p>The format of thumbnails, if any. Valid values are <code>jpg</code> and
* <code>png</code>. </p> <p>You specify whether you want Elastic Transcoder to
* create thumbnails when you create a job.</p>
*/
inline Thumbnails& WithFormat(Aws::String&& value) { SetFormat(std::move(value)); return *this;}
/**
* <p>The format of thumbnails, if any. Valid values are <code>jpg</code> and
* <code>png</code>. </p> <p>You specify whether you want Elastic Transcoder to
* create thumbnails when you create a job.</p>
*/
inline Thumbnails& WithFormat(const char* value) { SetFormat(value); return *this;}
/**
* <p>The approximate number of seconds between thumbnails. Specify an integer
* value.</p>
*/
inline const Aws::String& GetInterval() const{ return m_interval; }
/**
* <p>The approximate number of seconds between thumbnails. Specify an integer
* value.</p>
*/
inline bool IntervalHasBeenSet() const { return m_intervalHasBeenSet; }
/**
* <p>The approximate number of seconds between thumbnails. Specify an integer
* value.</p>
*/
inline void SetInterval(const Aws::String& value) { m_intervalHasBeenSet = true; m_interval = value; }
/**
* <p>The approximate number of seconds between thumbnails. Specify an integer
* value.</p>
*/
inline void SetInterval(Aws::String&& value) { m_intervalHasBeenSet = true; m_interval = std::move(value); }
/**
* <p>The approximate number of seconds between thumbnails. Specify an integer
* value.</p>
*/
inline void SetInterval(const char* value) { m_intervalHasBeenSet = true; m_interval.assign(value); }
/**
* <p>The approximate number of seconds between thumbnails. Specify an integer
* value.</p>
*/
inline Thumbnails& WithInterval(const Aws::String& value) { SetInterval(value); return *this;}
/**
* <p>The approximate number of seconds between thumbnails. Specify an integer
* value.</p>
*/
inline Thumbnails& WithInterval(Aws::String&& value) { SetInterval(std::move(value)); return *this;}
/**
* <p>The approximate number of seconds between thumbnails. Specify an integer
* value.</p>
*/
inline Thumbnails& WithInterval(const char* value) { SetInterval(value); return *this;}
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The width
* and height of thumbnail files in pixels. Specify a value in the format <code>
* <i>width</i> </code> x <code> <i>height</i> </code> where both values are even
* integers. The values cannot exceed the width and height that you specified in
* the <code>Video:Resolution</code> object.</p>
*/
inline const Aws::String& GetResolution() const{ return m_resolution; }
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The width
* and height of thumbnail files in pixels. Specify a value in the format <code>
* <i>width</i> </code> x <code> <i>height</i> </code> where both values are even
* integers. The values cannot exceed the width and height that you specified in
* the <code>Video:Resolution</code> object.</p>
*/
inline bool ResolutionHasBeenSet() const { return m_resolutionHasBeenSet; }
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The width
* and height of thumbnail files in pixels. Specify a value in the format <code>
* <i>width</i> </code> x <code> <i>height</i> </code> where both values are even
* integers. The values cannot exceed the width and height that you specified in
* the <code>Video:Resolution</code> object.</p>
*/
inline void SetResolution(const Aws::String& value) { m_resolutionHasBeenSet = true; m_resolution = value; }
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The width
* and height of thumbnail files in pixels. Specify a value in the format <code>
* <i>width</i> </code> x <code> <i>height</i> </code> where both values are even
* integers. The values cannot exceed the width and height that you specified in
* the <code>Video:Resolution</code> object.</p>
*/
inline void SetResolution(Aws::String&& value) { m_resolutionHasBeenSet = true; m_resolution = std::move(value); }
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The width
* and height of thumbnail files in pixels. Specify a value in the format <code>
* <i>width</i> </code> x <code> <i>height</i> </code> where both values are even
* integers. The values cannot exceed the width and height that you specified in
* the <code>Video:Resolution</code> object.</p>
*/
inline void SetResolution(const char* value) { m_resolutionHasBeenSet = true; m_resolution.assign(value); }
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The width
* and height of thumbnail files in pixels. Specify a value in the format <code>
* <i>width</i> </code> x <code> <i>height</i> </code> where both values are even
* integers. The values cannot exceed the width and height that you specified in
* the <code>Video:Resolution</code> object.</p>
*/
inline Thumbnails& WithResolution(const Aws::String& value) { SetResolution(value); return *this;}
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The width
* and height of thumbnail files in pixels. Specify a value in the format <code>
* <i>width</i> </code> x <code> <i>height</i> </code> where both values are even
* integers. The values cannot exceed the width and height that you specified in
* the <code>Video:Resolution</code> object.</p>
*/
inline Thumbnails& WithResolution(Aws::String&& value) { SetResolution(std::move(value)); return *this;}
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The width
* and height of thumbnail files in pixels. Specify a value in the format <code>
* <i>width</i> </code> x <code> <i>height</i> </code> where both values are even
* integers. The values cannot exceed the width and height that you specified in
* the <code>Video:Resolution</code> object.</p>
*/
inline Thumbnails& WithResolution(const char* value) { SetResolution(value); return *this;}
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The aspect
* ratio of thumbnails. Valid values include:</p> <p> <code>auto</code>,
* <code>1:1</code>, <code>4:3</code>, <code>3:2</code>, <code>16:9</code> </p>
* <p>If you specify <code>auto</code>, Elastic Transcoder tries to preserve the
* aspect ratio of the video in the output file.</p>
*/
inline const Aws::String& GetAspectRatio() const{ return m_aspectRatio; }
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The aspect
* ratio of thumbnails. Valid values include:</p> <p> <code>auto</code>,
* <code>1:1</code>, <code>4:3</code>, <code>3:2</code>, <code>16:9</code> </p>
* <p>If you specify <code>auto</code>, Elastic Transcoder tries to preserve the
* aspect ratio of the video in the output file.</p>
*/
inline bool AspectRatioHasBeenSet() const { return m_aspectRatioHasBeenSet; }
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The aspect
* ratio of thumbnails. Valid values include:</p> <p> <code>auto</code>,
* <code>1:1</code>, <code>4:3</code>, <code>3:2</code>, <code>16:9</code> </p>
* <p>If you specify <code>auto</code>, Elastic Transcoder tries to preserve the
* aspect ratio of the video in the output file.</p>
*/
inline void SetAspectRatio(const Aws::String& value) { m_aspectRatioHasBeenSet = true; m_aspectRatio = value; }
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The aspect
* ratio of thumbnails. Valid values include:</p> <p> <code>auto</code>,
* <code>1:1</code>, <code>4:3</code>, <code>3:2</code>, <code>16:9</code> </p>
* <p>If you specify <code>auto</code>, Elastic Transcoder tries to preserve the
* aspect ratio of the video in the output file.</p>
*/
inline void SetAspectRatio(Aws::String&& value) { m_aspectRatioHasBeenSet = true; m_aspectRatio = std::move(value); }
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The aspect
* ratio of thumbnails. Valid values include:</p> <p> <code>auto</code>,
* <code>1:1</code>, <code>4:3</code>, <code>3:2</code>, <code>16:9</code> </p>
* <p>If you specify <code>auto</code>, Elastic Transcoder tries to preserve the
* aspect ratio of the video in the output file.</p>
*/
inline void SetAspectRatio(const char* value) { m_aspectRatioHasBeenSet = true; m_aspectRatio.assign(value); }
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The aspect
* ratio of thumbnails. Valid values include:</p> <p> <code>auto</code>,
* <code>1:1</code>, <code>4:3</code>, <code>3:2</code>, <code>16:9</code> </p>
* <p>If you specify <code>auto</code>, Elastic Transcoder tries to preserve the
* aspect ratio of the video in the output file.</p>
*/
inline Thumbnails& WithAspectRatio(const Aws::String& value) { SetAspectRatio(value); return *this;}
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The aspect
* ratio of thumbnails. Valid values include:</p> <p> <code>auto</code>,
* <code>1:1</code>, <code>4:3</code>, <code>3:2</code>, <code>16:9</code> </p>
* <p>If you specify <code>auto</code>, Elastic Transcoder tries to preserve the
* aspect ratio of the video in the output file.</p>
*/
inline Thumbnails& WithAspectRatio(Aws::String&& value) { SetAspectRatio(std::move(value)); return *this;}
/**
* <p>To better control resolution and aspect ratio of thumbnails, we
* recommend that you use the values <code>MaxWidth</code>, <code>MaxHeight</code>,
* <code>SizingPolicy</code>, and <code>PaddingPolicy</code> instead of
* <code>Resolution</code> and <code>AspectRatio</code>. The two groups of settings
* are mutually exclusive. Do not use them together.</p> <p>The aspect
* ratio of thumbnails. Valid values include:</p> <p> <code>auto</code>,
* <code>1:1</code>, <code>4:3</code>, <code>3:2</code>, <code>16:9</code> </p>
* <p>If you specify <code>auto</code>, Elastic Transcoder tries to preserve the
* aspect ratio of the video in the output file.</p>
*/
inline Thumbnails& WithAspectRatio(const char* value) { SetAspectRatio(value); return *this;}
/**
* <p>The maximum width of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1920 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 4096.</p>
*/
inline const Aws::String& GetMaxWidth() const{ return m_maxWidth; }
/**
* <p>The maximum width of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1920 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 4096.</p>
*/
inline bool MaxWidthHasBeenSet() const { return m_maxWidthHasBeenSet; }
/**
* <p>The maximum width of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1920 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 4096.</p>
*/
inline void SetMaxWidth(const Aws::String& value) { m_maxWidthHasBeenSet = true; m_maxWidth = value; }
/**
* <p>The maximum width of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1920 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 4096.</p>
*/
inline void SetMaxWidth(Aws::String&& value) { m_maxWidthHasBeenSet = true; m_maxWidth = std::move(value); }
/**
* <p>The maximum width of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1920 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 4096.</p>
*/
inline void SetMaxWidth(const char* value) { m_maxWidthHasBeenSet = true; m_maxWidth.assign(value); }
/**
* <p>The maximum width of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1920 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 4096.</p>
*/
inline Thumbnails& WithMaxWidth(const Aws::String& value) { SetMaxWidth(value); return *this;}
/**
* <p>The maximum width of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1920 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 4096.</p>
*/
inline Thumbnails& WithMaxWidth(Aws::String&& value) { SetMaxWidth(std::move(value)); return *this;}
/**
* <p>The maximum width of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1920 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 4096.</p>
*/
inline Thumbnails& WithMaxWidth(const char* value) { SetMaxWidth(value); return *this;}
/**
* <p>The maximum height of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1080 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 3072.</p>
*/
inline const Aws::String& GetMaxHeight() const{ return m_maxHeight; }
/**
* <p>The maximum height of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1080 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 3072.</p>
*/
inline bool MaxHeightHasBeenSet() const { return m_maxHeightHasBeenSet; }
/**
* <p>The maximum height of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1080 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 3072.</p>
*/
inline void SetMaxHeight(const Aws::String& value) { m_maxHeightHasBeenSet = true; m_maxHeight = value; }
/**
* <p>The maximum height of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1080 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 3072.</p>
*/
inline void SetMaxHeight(Aws::String&& value) { m_maxHeightHasBeenSet = true; m_maxHeight = std::move(value); }
/**
* <p>The maximum height of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1080 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 3072.</p>
*/
inline void SetMaxHeight(const char* value) { m_maxHeightHasBeenSet = true; m_maxHeight.assign(value); }
/**
* <p>The maximum height of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1080 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 3072.</p>
*/
inline Thumbnails& WithMaxHeight(const Aws::String& value) { SetMaxHeight(value); return *this;}
/**
* <p>The maximum height of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1080 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 3072.</p>
*/
inline Thumbnails& WithMaxHeight(Aws::String&& value) { SetMaxHeight(std::move(value)); return *this;}
/**
* <p>The maximum height of thumbnails in pixels. If you specify auto, Elastic
* Transcoder uses 1080 (Full HD) as the default value. If you specify a numeric
* value, enter an even integer between 32 and 3072.</p>
*/
inline Thumbnails& WithMaxHeight(const char* value) { SetMaxHeight(value); return *this;}
/**
* <p>Specify one of the following values to control scaling of thumbnails:</p>
* <ul> <li> <p> <code>Fit</code>: Elastic Transcoder scales thumbnails so they
* match the value that you specified in thumbnail MaxWidth or MaxHeight settings
* without exceeding the other value. </p> </li> <li> <p> <code>Fill</code>:
* Elastic Transcoder scales thumbnails so they match the value that you specified
* in thumbnail <code>MaxWidth</code> or <code>MaxHeight</code> settings and
* matches or exceeds the other value. Elastic Transcoder centers the image in
* thumbnails and then crops in the dimension (if any) that exceeds the maximum
* value.</p> </li> <li> <p> <code>Stretch</code>: Elastic Transcoder stretches
* thumbnails to match the values that you specified for thumbnail
* <code>MaxWidth</code> and <code>MaxHeight</code> settings. If the relative
* proportions of the input video and thumbnails are different, the thumbnails will
* be distorted.</p> </li> <li> <p> <code>Keep</code>: Elastic Transcoder does not
* scale thumbnails. If either dimension of the input video exceeds the values that
* you specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings, Elastic Transcoder crops the thumbnails.</p> </li> <li> <p>
* <code>ShrinkToFit</code>: Elastic Transcoder scales thumbnails down so that
* their dimensions match the values that you specified for at least one of
* thumbnail <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding
* either value. If you specify this option, Elastic Transcoder does not scale
* thumbnails up.</p> </li> <li> <p> <code>ShrinkToFill</code>: Elastic Transcoder
* scales thumbnails down so that their dimensions match the values that you
* specified for at least one of <code>MaxWidth</code> and <code>MaxHeight</code>
* without dropping below either value. If you specify this option, Elastic
* Transcoder does not scale thumbnails up.</p> </li> </ul>
*/
inline const Aws::String& GetSizingPolicy() const{ return m_sizingPolicy; }
/**
* <p>Specify one of the following values to control scaling of thumbnails:</p>
* <ul> <li> <p> <code>Fit</code>: Elastic Transcoder scales thumbnails so they
* match the value that you specified in thumbnail MaxWidth or MaxHeight settings
* without exceeding the other value. </p> </li> <li> <p> <code>Fill</code>:
* Elastic Transcoder scales thumbnails so they match the value that you specified
* in thumbnail <code>MaxWidth</code> or <code>MaxHeight</code> settings and
* matches or exceeds the other value. Elastic Transcoder centers the image in
* thumbnails and then crops in the dimension (if any) that exceeds the maximum
* value.</p> </li> <li> <p> <code>Stretch</code>: Elastic Transcoder stretches
* thumbnails to match the values that you specified for thumbnail
* <code>MaxWidth</code> and <code>MaxHeight</code> settings. If the relative
* proportions of the input video and thumbnails are different, the thumbnails will
* be distorted.</p> </li> <li> <p> <code>Keep</code>: Elastic Transcoder does not
* scale thumbnails. If either dimension of the input video exceeds the values that
* you specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings, Elastic Transcoder crops the thumbnails.</p> </li> <li> <p>
* <code>ShrinkToFit</code>: Elastic Transcoder scales thumbnails down so that
* their dimensions match the values that you specified for at least one of
* thumbnail <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding
* either value. If you specify this option, Elastic Transcoder does not scale
* thumbnails up.</p> </li> <li> <p> <code>ShrinkToFill</code>: Elastic Transcoder
* scales thumbnails down so that their dimensions match the values that you
* specified for at least one of <code>MaxWidth</code> and <code>MaxHeight</code>
* without dropping below either value. If you specify this option, Elastic
* Transcoder does not scale thumbnails up.</p> </li> </ul>
*/
inline bool SizingPolicyHasBeenSet() const { return m_sizingPolicyHasBeenSet; }
/**
* <p>Specify one of the following values to control scaling of thumbnails:</p>
* <ul> <li> <p> <code>Fit</code>: Elastic Transcoder scales thumbnails so they
* match the value that you specified in thumbnail MaxWidth or MaxHeight settings
* without exceeding the other value. </p> </li> <li> <p> <code>Fill</code>:
* Elastic Transcoder scales thumbnails so they match the value that you specified
* in thumbnail <code>MaxWidth</code> or <code>MaxHeight</code> settings and
* matches or exceeds the other value. Elastic Transcoder centers the image in
* thumbnails and then crops in the dimension (if any) that exceeds the maximum
* value.</p> </li> <li> <p> <code>Stretch</code>: Elastic Transcoder stretches
* thumbnails to match the values that you specified for thumbnail
* <code>MaxWidth</code> and <code>MaxHeight</code> settings. If the relative
* proportions of the input video and thumbnails are different, the thumbnails will
* be distorted.</p> </li> <li> <p> <code>Keep</code>: Elastic Transcoder does not
* scale thumbnails. If either dimension of the input video exceeds the values that
* you specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings, Elastic Transcoder crops the thumbnails.</p> </li> <li> <p>
* <code>ShrinkToFit</code>: Elastic Transcoder scales thumbnails down so that
* their dimensions match the values that you specified for at least one of
* thumbnail <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding
* either value. If you specify this option, Elastic Transcoder does not scale
* thumbnails up.</p> </li> <li> <p> <code>ShrinkToFill</code>: Elastic Transcoder
* scales thumbnails down so that their dimensions match the values that you
* specified for at least one of <code>MaxWidth</code> and <code>MaxHeight</code>
* without dropping below either value. If you specify this option, Elastic
* Transcoder does not scale thumbnails up.</p> </li> </ul>
*/
inline void SetSizingPolicy(const Aws::String& value) { m_sizingPolicyHasBeenSet = true; m_sizingPolicy = value; }
/**
* <p>Specify one of the following values to control scaling of thumbnails:</p>
* <ul> <li> <p> <code>Fit</code>: Elastic Transcoder scales thumbnails so they
* match the value that you specified in thumbnail MaxWidth or MaxHeight settings
* without exceeding the other value. </p> </li> <li> <p> <code>Fill</code>:
* Elastic Transcoder scales thumbnails so they match the value that you specified
* in thumbnail <code>MaxWidth</code> or <code>MaxHeight</code> settings and
* matches or exceeds the other value. Elastic Transcoder centers the image in
* thumbnails and then crops in the dimension (if any) that exceeds the maximum
* value.</p> </li> <li> <p> <code>Stretch</code>: Elastic Transcoder stretches
* thumbnails to match the values that you specified for thumbnail
* <code>MaxWidth</code> and <code>MaxHeight</code> settings. If the relative
* proportions of the input video and thumbnails are different, the thumbnails will
* be distorted.</p> </li> <li> <p> <code>Keep</code>: Elastic Transcoder does not
* scale thumbnails. If either dimension of the input video exceeds the values that
* you specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings, Elastic Transcoder crops the thumbnails.</p> </li> <li> <p>
* <code>ShrinkToFit</code>: Elastic Transcoder scales thumbnails down so that
* their dimensions match the values that you specified for at least one of
* thumbnail <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding
* either value. If you specify this option, Elastic Transcoder does not scale
* thumbnails up.</p> </li> <li> <p> <code>ShrinkToFill</code>: Elastic Transcoder
* scales thumbnails down so that their dimensions match the values that you
* specified for at least one of <code>MaxWidth</code> and <code>MaxHeight</code>
* without dropping below either value. If you specify this option, Elastic
* Transcoder does not scale thumbnails up.</p> </li> </ul>
*/
inline void SetSizingPolicy(Aws::String&& value) { m_sizingPolicyHasBeenSet = true; m_sizingPolicy = std::move(value); }
/**
* <p>Specify one of the following values to control scaling of thumbnails:</p>
* <ul> <li> <p> <code>Fit</code>: Elastic Transcoder scales thumbnails so they
* match the value that you specified in thumbnail MaxWidth or MaxHeight settings
* without exceeding the other value. </p> </li> <li> <p> <code>Fill</code>:
* Elastic Transcoder scales thumbnails so they match the value that you specified
* in thumbnail <code>MaxWidth</code> or <code>MaxHeight</code> settings and
* matches or exceeds the other value. Elastic Transcoder centers the image in
* thumbnails and then crops in the dimension (if any) that exceeds the maximum
* value.</p> </li> <li> <p> <code>Stretch</code>: Elastic Transcoder stretches
* thumbnails to match the values that you specified for thumbnail
* <code>MaxWidth</code> and <code>MaxHeight</code> settings. If the relative
* proportions of the input video and thumbnails are different, the thumbnails will
* be distorted.</p> </li> <li> <p> <code>Keep</code>: Elastic Transcoder does not
* scale thumbnails. If either dimension of the input video exceeds the values that
* you specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings, Elastic Transcoder crops the thumbnails.</p> </li> <li> <p>
* <code>ShrinkToFit</code>: Elastic Transcoder scales thumbnails down so that
* their dimensions match the values that you specified for at least one of
* thumbnail <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding
* either value. If you specify this option, Elastic Transcoder does not scale
* thumbnails up.</p> </li> <li> <p> <code>ShrinkToFill</code>: Elastic Transcoder
* scales thumbnails down so that their dimensions match the values that you
* specified for at least one of <code>MaxWidth</code> and <code>MaxHeight</code>
* without dropping below either value. If you specify this option, Elastic
* Transcoder does not scale thumbnails up.</p> </li> </ul>
*/
inline void SetSizingPolicy(const char* value) { m_sizingPolicyHasBeenSet = true; m_sizingPolicy.assign(value); }
/**
* <p>Specify one of the following values to control scaling of thumbnails:</p>
* <ul> <li> <p> <code>Fit</code>: Elastic Transcoder scales thumbnails so they
* match the value that you specified in thumbnail MaxWidth or MaxHeight settings
* without exceeding the other value. </p> </li> <li> <p> <code>Fill</code>:
* Elastic Transcoder scales thumbnails so they match the value that you specified
* in thumbnail <code>MaxWidth</code> or <code>MaxHeight</code> settings and
* matches or exceeds the other value. Elastic Transcoder centers the image in
* thumbnails and then crops in the dimension (if any) that exceeds the maximum
* value.</p> </li> <li> <p> <code>Stretch</code>: Elastic Transcoder stretches
* thumbnails to match the values that you specified for thumbnail
* <code>MaxWidth</code> and <code>MaxHeight</code> settings. If the relative
* proportions of the input video and thumbnails are different, the thumbnails will
* be distorted.</p> </li> <li> <p> <code>Keep</code>: Elastic Transcoder does not
* scale thumbnails. If either dimension of the input video exceeds the values that
* you specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings, Elastic Transcoder crops the thumbnails.</p> </li> <li> <p>
* <code>ShrinkToFit</code>: Elastic Transcoder scales thumbnails down so that
* their dimensions match the values that you specified for at least one of
* thumbnail <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding
* either value. If you specify this option, Elastic Transcoder does not scale
* thumbnails up.</p> </li> <li> <p> <code>ShrinkToFill</code>: Elastic Transcoder
* scales thumbnails down so that their dimensions match the values that you
* specified for at least one of <code>MaxWidth</code> and <code>MaxHeight</code>
* without dropping below either value. If you specify this option, Elastic
* Transcoder does not scale thumbnails up.</p> </li> </ul>
*/
inline Thumbnails& WithSizingPolicy(const Aws::String& value) { SetSizingPolicy(value); return *this;}
/**
* <p>Specify one of the following values to control scaling of thumbnails:</p>
* <ul> <li> <p> <code>Fit</code>: Elastic Transcoder scales thumbnails so they
* match the value that you specified in thumbnail MaxWidth or MaxHeight settings
* without exceeding the other value. </p> </li> <li> <p> <code>Fill</code>:
* Elastic Transcoder scales thumbnails so they match the value that you specified
* in thumbnail <code>MaxWidth</code> or <code>MaxHeight</code> settings and
* matches or exceeds the other value. Elastic Transcoder centers the image in
* thumbnails and then crops in the dimension (if any) that exceeds the maximum
* value.</p> </li> <li> <p> <code>Stretch</code>: Elastic Transcoder stretches
* thumbnails to match the values that you specified for thumbnail
* <code>MaxWidth</code> and <code>MaxHeight</code> settings. If the relative
* proportions of the input video and thumbnails are different, the thumbnails will
* be distorted.</p> </li> <li> <p> <code>Keep</code>: Elastic Transcoder does not
* scale thumbnails. If either dimension of the input video exceeds the values that
* you specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings, Elastic Transcoder crops the thumbnails.</p> </li> <li> <p>
* <code>ShrinkToFit</code>: Elastic Transcoder scales thumbnails down so that
* their dimensions match the values that you specified for at least one of
* thumbnail <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding
* either value. If you specify this option, Elastic Transcoder does not scale
* thumbnails up.</p> </li> <li> <p> <code>ShrinkToFill</code>: Elastic Transcoder
* scales thumbnails down so that their dimensions match the values that you
* specified for at least one of <code>MaxWidth</code> and <code>MaxHeight</code>
* without dropping below either value. If you specify this option, Elastic
* Transcoder does not scale thumbnails up.</p> </li> </ul>
*/
inline Thumbnails& WithSizingPolicy(Aws::String&& value) { SetSizingPolicy(std::move(value)); return *this;}
/**
* <p>Specify one of the following values to control scaling of thumbnails:</p>
* <ul> <li> <p> <code>Fit</code>: Elastic Transcoder scales thumbnails so they
* match the value that you specified in thumbnail MaxWidth or MaxHeight settings
* without exceeding the other value. </p> </li> <li> <p> <code>Fill</code>:
* Elastic Transcoder scales thumbnails so they match the value that you specified
* in thumbnail <code>MaxWidth</code> or <code>MaxHeight</code> settings and
* matches or exceeds the other value. Elastic Transcoder centers the image in
* thumbnails and then crops in the dimension (if any) that exceeds the maximum
* value.</p> </li> <li> <p> <code>Stretch</code>: Elastic Transcoder stretches
* thumbnails to match the values that you specified for thumbnail
* <code>MaxWidth</code> and <code>MaxHeight</code> settings. If the relative
* proportions of the input video and thumbnails are different, the thumbnails will
* be distorted.</p> </li> <li> <p> <code>Keep</code>: Elastic Transcoder does not
* scale thumbnails. If either dimension of the input video exceeds the values that
* you specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings, Elastic Transcoder crops the thumbnails.</p> </li> <li> <p>
* <code>ShrinkToFit</code>: Elastic Transcoder scales thumbnails down so that
* their dimensions match the values that you specified for at least one of
* thumbnail <code>MaxWidth</code> and <code>MaxHeight</code> without exceeding
* either value. If you specify this option, Elastic Transcoder does not scale
* thumbnails up.</p> </li> <li> <p> <code>ShrinkToFill</code>: Elastic Transcoder
* scales thumbnails down so that their dimensions match the values that you
* specified for at least one of <code>MaxWidth</code> and <code>MaxHeight</code>
* without dropping below either value. If you specify this option, Elastic
* Transcoder does not scale thumbnails up.</p> </li> </ul>
*/
inline Thumbnails& WithSizingPolicy(const char* value) { SetSizingPolicy(value); return *this;}
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add black bars to the top and bottom and/or left and right sides
* of thumbnails to make the total size of the thumbnails match the values that you
* specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings.</p>
*/
inline const Aws::String& GetPaddingPolicy() const{ return m_paddingPolicy; }
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add black bars to the top and bottom and/or left and right sides
* of thumbnails to make the total size of the thumbnails match the values that you
* specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings.</p>
*/
inline bool PaddingPolicyHasBeenSet() const { return m_paddingPolicyHasBeenSet; }
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add black bars to the top and bottom and/or left and right sides
* of thumbnails to make the total size of the thumbnails match the values that you
* specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings.</p>
*/
inline void SetPaddingPolicy(const Aws::String& value) { m_paddingPolicyHasBeenSet = true; m_paddingPolicy = value; }
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add black bars to the top and bottom and/or left and right sides
* of thumbnails to make the total size of the thumbnails match the values that you
* specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings.</p>
*/
inline void SetPaddingPolicy(Aws::String&& value) { m_paddingPolicyHasBeenSet = true; m_paddingPolicy = std::move(value); }
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add black bars to the top and bottom and/or left and right sides
* of thumbnails to make the total size of the thumbnails match the values that you
* specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings.</p>
*/
inline void SetPaddingPolicy(const char* value) { m_paddingPolicyHasBeenSet = true; m_paddingPolicy.assign(value); }
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add black bars to the top and bottom and/or left and right sides
* of thumbnails to make the total size of the thumbnails match the values that you
* specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings.</p>
*/
inline Thumbnails& WithPaddingPolicy(const Aws::String& value) { SetPaddingPolicy(value); return *this;}
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add black bars to the top and bottom and/or left and right sides
* of thumbnails to make the total size of the thumbnails match the values that you
* specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings.</p>
*/
inline Thumbnails& WithPaddingPolicy(Aws::String&& value) { SetPaddingPolicy(std::move(value)); return *this;}
/**
* <p>When you set <code>PaddingPolicy</code> to <code>Pad</code>, Elastic
* Transcoder may add black bars to the top and bottom and/or left and right sides
* of thumbnails to make the total size of the thumbnails match the values that you
* specified for thumbnail <code>MaxWidth</code> and <code>MaxHeight</code>
* settings.</p>
*/
inline Thumbnails& WithPaddingPolicy(const char* value) { SetPaddingPolicy(value); return *this;}
private:
Aws::String m_format;
bool m_formatHasBeenSet;
Aws::String m_interval;
bool m_intervalHasBeenSet;
Aws::String m_resolution;
bool m_resolutionHasBeenSet;
Aws::String m_aspectRatio;
bool m_aspectRatioHasBeenSet;
Aws::String m_maxWidth;
bool m_maxWidthHasBeenSet;
Aws::String m_maxHeight;
bool m_maxHeightHasBeenSet;
Aws::String m_sizingPolicy;
bool m_sizingPolicyHasBeenSet;
Aws::String m_paddingPolicy;
bool m_paddingPolicyHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,197 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>Settings that determine when a clip begins and how long it
* lasts.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/TimeSpan">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API TimeSpan
{
public:
TimeSpan();
TimeSpan(Aws::Utils::Json::JsonView jsonValue);
TimeSpan& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The place in the input file where you want a clip to start. The format can be
* either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a
* second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value,
* Elastic Transcoder starts at the beginning of the input file.</p>
*/
inline const Aws::String& GetStartTime() const{ return m_startTime; }
/**
* <p>The place in the input file where you want a clip to start. The format can be
* either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a
* second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value,
* Elastic Transcoder starts at the beginning of the input file.</p>
*/
inline bool StartTimeHasBeenSet() const { return m_startTimeHasBeenSet; }
/**
* <p>The place in the input file where you want a clip to start. The format can be
* either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a
* second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value,
* Elastic Transcoder starts at the beginning of the input file.</p>
*/
inline void SetStartTime(const Aws::String& value) { m_startTimeHasBeenSet = true; m_startTime = value; }
/**
* <p>The place in the input file where you want a clip to start. The format can be
* either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a
* second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value,
* Elastic Transcoder starts at the beginning of the input file.</p>
*/
inline void SetStartTime(Aws::String&& value) { m_startTimeHasBeenSet = true; m_startTime = std::move(value); }
/**
* <p>The place in the input file where you want a clip to start. The format can be
* either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a
* second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value,
* Elastic Transcoder starts at the beginning of the input file.</p>
*/
inline void SetStartTime(const char* value) { m_startTimeHasBeenSet = true; m_startTime.assign(value); }
/**
* <p>The place in the input file where you want a clip to start. The format can be
* either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a
* second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value,
* Elastic Transcoder starts at the beginning of the input file.</p>
*/
inline TimeSpan& WithStartTime(const Aws::String& value) { SetStartTime(value); return *this;}
/**
* <p>The place in the input file where you want a clip to start. The format can be
* either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a
* second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value,
* Elastic Transcoder starts at the beginning of the input file.</p>
*/
inline TimeSpan& WithStartTime(Aws::String&& value) { SetStartTime(std::move(value)); return *this;}
/**
* <p>The place in the input file where you want a clip to start. The format can be
* either HH:mm:ss.SSS (maximum value: 23:59:59.999; SSS is thousandths of a
* second) or sssss.SSS (maximum value: 86399.999). If you don't specify a value,
* Elastic Transcoder starts at the beginning of the input file.</p>
*/
inline TimeSpan& WithStartTime(const char* value) { SetStartTime(value); return *this;}
/**
* <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum
* value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum
* value: 86399.999). If you don't specify a value, Elastic Transcoder creates an
* output file from StartTime to the end of the file.</p> <p>If you specify a value
* longer than the duration of the input file, Elastic Transcoder transcodes the
* file and returns a warning message.</p>
*/
inline const Aws::String& GetDuration() const{ return m_duration; }
/**
* <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum
* value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum
* value: 86399.999). If you don't specify a value, Elastic Transcoder creates an
* output file from StartTime to the end of the file.</p> <p>If you specify a value
* longer than the duration of the input file, Elastic Transcoder transcodes the
* file and returns a warning message.</p>
*/
inline bool DurationHasBeenSet() const { return m_durationHasBeenSet; }
/**
* <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum
* value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum
* value: 86399.999). If you don't specify a value, Elastic Transcoder creates an
* output file from StartTime to the end of the file.</p> <p>If you specify a value
* longer than the duration of the input file, Elastic Transcoder transcodes the
* file and returns a warning message.</p>
*/
inline void SetDuration(const Aws::String& value) { m_durationHasBeenSet = true; m_duration = value; }
/**
* <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum
* value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum
* value: 86399.999). If you don't specify a value, Elastic Transcoder creates an
* output file from StartTime to the end of the file.</p> <p>If you specify a value
* longer than the duration of the input file, Elastic Transcoder transcodes the
* file and returns a warning message.</p>
*/
inline void SetDuration(Aws::String&& value) { m_durationHasBeenSet = true; m_duration = std::move(value); }
/**
* <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum
* value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum
* value: 86399.999). If you don't specify a value, Elastic Transcoder creates an
* output file from StartTime to the end of the file.</p> <p>If you specify a value
* longer than the duration of the input file, Elastic Transcoder transcodes the
* file and returns a warning message.</p>
*/
inline void SetDuration(const char* value) { m_durationHasBeenSet = true; m_duration.assign(value); }
/**
* <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum
* value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum
* value: 86399.999). If you don't specify a value, Elastic Transcoder creates an
* output file from StartTime to the end of the file.</p> <p>If you specify a value
* longer than the duration of the input file, Elastic Transcoder transcodes the
* file and returns a warning message.</p>
*/
inline TimeSpan& WithDuration(const Aws::String& value) { SetDuration(value); return *this;}
/**
* <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum
* value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum
* value: 86399.999). If you don't specify a value, Elastic Transcoder creates an
* output file from StartTime to the end of the file.</p> <p>If you specify a value
* longer than the duration of the input file, Elastic Transcoder transcodes the
* file and returns a warning message.</p>
*/
inline TimeSpan& WithDuration(Aws::String&& value) { SetDuration(std::move(value)); return *this;}
/**
* <p>The duration of the clip. The format can be either HH:mm:ss.SSS (maximum
* value: 23:59:59.999; SSS is thousandths of a second) or sssss.SSS (maximum
* value: 86399.999). If you don't specify a value, Elastic Transcoder creates an
* output file from StartTime to the end of the file.</p> <p>If you specify a value
* longer than the duration of the input file, Elastic Transcoder transcodes the
* file and returns a warning message.</p>
*/
inline TimeSpan& WithDuration(const char* value) { SetDuration(value); return *this;}
private:
Aws::String m_startTime;
bool m_startTimeHasBeenSet;
Aws::String m_duration;
bool m_durationHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,118 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>Details about the timing of a job.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/Timing">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API Timing
{
public:
Timing();
Timing(Aws::Utils::Json::JsonView jsonValue);
Timing& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The time the job was submitted to Elastic Transcoder, in epoch
* milliseconds.</p>
*/
inline long long GetSubmitTimeMillis() const{ return m_submitTimeMillis; }
/**
* <p>The time the job was submitted to Elastic Transcoder, in epoch
* milliseconds.</p>
*/
inline bool SubmitTimeMillisHasBeenSet() const { return m_submitTimeMillisHasBeenSet; }
/**
* <p>The time the job was submitted to Elastic Transcoder, in epoch
* milliseconds.</p>
*/
inline void SetSubmitTimeMillis(long long value) { m_submitTimeMillisHasBeenSet = true; m_submitTimeMillis = value; }
/**
* <p>The time the job was submitted to Elastic Transcoder, in epoch
* milliseconds.</p>
*/
inline Timing& WithSubmitTimeMillis(long long value) { SetSubmitTimeMillis(value); return *this;}
/**
* <p>The time the job began transcoding, in epoch milliseconds.</p>
*/
inline long long GetStartTimeMillis() const{ return m_startTimeMillis; }
/**
* <p>The time the job began transcoding, in epoch milliseconds.</p>
*/
inline bool StartTimeMillisHasBeenSet() const { return m_startTimeMillisHasBeenSet; }
/**
* <p>The time the job began transcoding, in epoch milliseconds.</p>
*/
inline void SetStartTimeMillis(long long value) { m_startTimeMillisHasBeenSet = true; m_startTimeMillis = value; }
/**
* <p>The time the job began transcoding, in epoch milliseconds.</p>
*/
inline Timing& WithStartTimeMillis(long long value) { SetStartTimeMillis(value); return *this;}
/**
* <p>The time the job finished transcoding, in epoch milliseconds.</p>
*/
inline long long GetFinishTimeMillis() const{ return m_finishTimeMillis; }
/**
* <p>The time the job finished transcoding, in epoch milliseconds.</p>
*/
inline bool FinishTimeMillisHasBeenSet() const { return m_finishTimeMillisHasBeenSet; }
/**
* <p>The time the job finished transcoding, in epoch milliseconds.</p>
*/
inline void SetFinishTimeMillis(long long value) { m_finishTimeMillisHasBeenSet = true; m_finishTimeMillis = value; }
/**
* <p>The time the job finished transcoding, in epoch milliseconds.</p>
*/
inline Timing& WithFinishTimeMillis(long long value) { SetFinishTimeMillis(value); return *this;}
private:
long long m_submitTimeMillis;
bool m_submitTimeMillisHasBeenSet;
long long m_startTimeMillis;
bool m_startTimeMillisHasBeenSet;
long long m_finishTimeMillis;
bool m_finishTimeMillisHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,220 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/ElasticTranscoderRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <aws/elastictranscoder/model/Notifications.h>
#include <utility>
namespace Aws
{
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>UpdatePipelineNotificationsRequest</code> structure.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/UpdatePipelineNotificationsRequest">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API UpdatePipelineNotificationsRequest : public ElasticTranscoderRequest
{
public:
UpdatePipelineNotificationsRequest();
// 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 "UpdatePipelineNotifications"; }
Aws::String SerializePayload() const override;
/**
* <p>The identifier of the pipeline for which you want to change notification
* settings.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The identifier of the pipeline for which you want to change notification
* settings.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The identifier of the pipeline for which you want to change notification
* settings.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The identifier of the pipeline for which you want to change notification
* settings.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The identifier of the pipeline for which you want to change notification
* settings.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The identifier of the pipeline for which you want to change notification
* settings.</p>
*/
inline UpdatePipelineNotificationsRequest& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The identifier of the pipeline for which you want to change notification
* settings.</p>
*/
inline UpdatePipelineNotificationsRequest& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The identifier of the pipeline for which you want to change notification
* settings.</p>
*/
inline UpdatePipelineNotificationsRequest& WithId(const char* value) { SetId(value); return *this;}
/**
* <p>The topic ARN for the Amazon Simple Notification Service (Amazon SNS) topic
* that you want to notify to report job status.</p> <p>To receive
* notifications, you must also subscribe to the new topic in the Amazon SNS
* console.</p> <ul> <li> <p> <b>Progressing</b>: The topic ARN for
* the Amazon Simple Notification Service (Amazon SNS) topic that you want to
* notify when Elastic Transcoder has started to process jobs that are added to
* this pipeline. This is the ARN that Amazon SNS returned when you created the
* topic.</p> </li> <li> <p> <b>Complete</b>: The topic ARN for the Amazon SNS
* topic that you want to notify when Elastic Transcoder has finished processing a
* job. This is the ARN that Amazon SNS returned when you created the topic.</p>
* </li> <li> <p> <b>Warning</b>: The topic ARN for the Amazon SNS topic that you
* want to notify when Elastic Transcoder encounters a warning condition. This is
* the ARN that Amazon SNS returned when you created the topic.</p> </li> <li> <p>
* <b>Error</b>: The topic ARN for the Amazon SNS topic that you want to notify
* when Elastic Transcoder encounters an error condition. This is the ARN that
* Amazon SNS returned when you created the topic.</p> </li> </ul>
*/
inline const Notifications& GetNotifications() const{ return m_notifications; }
/**
* <p>The topic ARN for the Amazon Simple Notification Service (Amazon SNS) topic
* that you want to notify to report job status.</p> <p>To receive
* notifications, you must also subscribe to the new topic in the Amazon SNS
* console.</p> <ul> <li> <p> <b>Progressing</b>: The topic ARN for
* the Amazon Simple Notification Service (Amazon SNS) topic that you want to
* notify when Elastic Transcoder has started to process jobs that are added to
* this pipeline. This is the ARN that Amazon SNS returned when you created the
* topic.</p> </li> <li> <p> <b>Complete</b>: The topic ARN for the Amazon SNS
* topic that you want to notify when Elastic Transcoder has finished processing a
* job. This is the ARN that Amazon SNS returned when you created the topic.</p>
* </li> <li> <p> <b>Warning</b>: The topic ARN for the Amazon SNS topic that you
* want to notify when Elastic Transcoder encounters a warning condition. This is
* the ARN that Amazon SNS returned when you created the topic.</p> </li> <li> <p>
* <b>Error</b>: The topic ARN for the Amazon SNS topic that you want to notify
* when Elastic Transcoder encounters an error condition. This is the ARN that
* Amazon SNS returned when you created the topic.</p> </li> </ul>
*/
inline bool NotificationsHasBeenSet() const { return m_notificationsHasBeenSet; }
/**
* <p>The topic ARN for the Amazon Simple Notification Service (Amazon SNS) topic
* that you want to notify to report job status.</p> <p>To receive
* notifications, you must also subscribe to the new topic in the Amazon SNS
* console.</p> <ul> <li> <p> <b>Progressing</b>: The topic ARN for
* the Amazon Simple Notification Service (Amazon SNS) topic that you want to
* notify when Elastic Transcoder has started to process jobs that are added to
* this pipeline. This is the ARN that Amazon SNS returned when you created the
* topic.</p> </li> <li> <p> <b>Complete</b>: The topic ARN for the Amazon SNS
* topic that you want to notify when Elastic Transcoder has finished processing a
* job. This is the ARN that Amazon SNS returned when you created the topic.</p>
* </li> <li> <p> <b>Warning</b>: The topic ARN for the Amazon SNS topic that you
* want to notify when Elastic Transcoder encounters a warning condition. This is
* the ARN that Amazon SNS returned when you created the topic.</p> </li> <li> <p>
* <b>Error</b>: The topic ARN for the Amazon SNS topic that you want to notify
* when Elastic Transcoder encounters an error condition. This is the ARN that
* Amazon SNS returned when you created the topic.</p> </li> </ul>
*/
inline void SetNotifications(const Notifications& value) { m_notificationsHasBeenSet = true; m_notifications = value; }
/**
* <p>The topic ARN for the Amazon Simple Notification Service (Amazon SNS) topic
* that you want to notify to report job status.</p> <p>To receive
* notifications, you must also subscribe to the new topic in the Amazon SNS
* console.</p> <ul> <li> <p> <b>Progressing</b>: The topic ARN for
* the Amazon Simple Notification Service (Amazon SNS) topic that you want to
* notify when Elastic Transcoder has started to process jobs that are added to
* this pipeline. This is the ARN that Amazon SNS returned when you created the
* topic.</p> </li> <li> <p> <b>Complete</b>: The topic ARN for the Amazon SNS
* topic that you want to notify when Elastic Transcoder has finished processing a
* job. This is the ARN that Amazon SNS returned when you created the topic.</p>
* </li> <li> <p> <b>Warning</b>: The topic ARN for the Amazon SNS topic that you
* want to notify when Elastic Transcoder encounters a warning condition. This is
* the ARN that Amazon SNS returned when you created the topic.</p> </li> <li> <p>
* <b>Error</b>: The topic ARN for the Amazon SNS topic that you want to notify
* when Elastic Transcoder encounters an error condition. This is the ARN that
* Amazon SNS returned when you created the topic.</p> </li> </ul>
*/
inline void SetNotifications(Notifications&& value) { m_notificationsHasBeenSet = true; m_notifications = std::move(value); }
/**
* <p>The topic ARN for the Amazon Simple Notification Service (Amazon SNS) topic
* that you want to notify to report job status.</p> <p>To receive
* notifications, you must also subscribe to the new topic in the Amazon SNS
* console.</p> <ul> <li> <p> <b>Progressing</b>: The topic ARN for
* the Amazon Simple Notification Service (Amazon SNS) topic that you want to
* notify when Elastic Transcoder has started to process jobs that are added to
* this pipeline. This is the ARN that Amazon SNS returned when you created the
* topic.</p> </li> <li> <p> <b>Complete</b>: The topic ARN for the Amazon SNS
* topic that you want to notify when Elastic Transcoder has finished processing a
* job. This is the ARN that Amazon SNS returned when you created the topic.</p>
* </li> <li> <p> <b>Warning</b>: The topic ARN for the Amazon SNS topic that you
* want to notify when Elastic Transcoder encounters a warning condition. This is
* the ARN that Amazon SNS returned when you created the topic.</p> </li> <li> <p>
* <b>Error</b>: The topic ARN for the Amazon SNS topic that you want to notify
* when Elastic Transcoder encounters an error condition. This is the ARN that
* Amazon SNS returned when you created the topic.</p> </li> </ul>
*/
inline UpdatePipelineNotificationsRequest& WithNotifications(const Notifications& value) { SetNotifications(value); return *this;}
/**
* <p>The topic ARN for the Amazon Simple Notification Service (Amazon SNS) topic
* that you want to notify to report job status.</p> <p>To receive
* notifications, you must also subscribe to the new topic in the Amazon SNS
* console.</p> <ul> <li> <p> <b>Progressing</b>: The topic ARN for
* the Amazon Simple Notification Service (Amazon SNS) topic that you want to
* notify when Elastic Transcoder has started to process jobs that are added to
* this pipeline. This is the ARN that Amazon SNS returned when you created the
* topic.</p> </li> <li> <p> <b>Complete</b>: The topic ARN for the Amazon SNS
* topic that you want to notify when Elastic Transcoder has finished processing a
* job. This is the ARN that Amazon SNS returned when you created the topic.</p>
* </li> <li> <p> <b>Warning</b>: The topic ARN for the Amazon SNS topic that you
* want to notify when Elastic Transcoder encounters a warning condition. This is
* the ARN that Amazon SNS returned when you created the topic.</p> </li> <li> <p>
* <b>Error</b>: The topic ARN for the Amazon SNS topic that you want to notify
* when Elastic Transcoder encounters an error condition. This is the ARN that
* Amazon SNS returned when you created the topic.</p> </li> </ul>
*/
inline UpdatePipelineNotificationsRequest& WithNotifications(Notifications&& value) { SetNotifications(std::move(value)); return *this;}
private:
Aws::String m_id;
bool m_idHasBeenSet;
Notifications m_notifications;
bool m_notificationsHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,78 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/model/Pipeline.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>UpdatePipelineNotificationsResponse</code> structure.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/UpdatePipelineNotificationsResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API UpdatePipelineNotificationsResult
{
public:
UpdatePipelineNotificationsResult();
UpdatePipelineNotificationsResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
UpdatePipelineNotificationsResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A section of the response body that provides information about the pipeline
* associated with this notification.</p>
*/
inline const Pipeline& GetPipeline() const{ return m_pipeline; }
/**
* <p>A section of the response body that provides information about the pipeline
* associated with this notification.</p>
*/
inline void SetPipeline(const Pipeline& value) { m_pipeline = value; }
/**
* <p>A section of the response body that provides information about the pipeline
* associated with this notification.</p>
*/
inline void SetPipeline(Pipeline&& value) { m_pipeline = std::move(value); }
/**
* <p>A section of the response body that provides information about the pipeline
* associated with this notification.</p>
*/
inline UpdatePipelineNotificationsResult& WithPipeline(const Pipeline& value) { SetPipeline(value); return *this;}
/**
* <p>A section of the response body that provides information about the pipeline
* associated with this notification.</p>
*/
inline UpdatePipelineNotificationsResult& WithPipeline(Pipeline&& value) { SetPipeline(std::move(value)); return *this;}
private:
Pipeline m_pipeline;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,134 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/model/Pipeline.h>
#include <aws/core/utils/memory/stl/AWSVector.h>
#include <aws/elastictranscoder/model/Warning.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>When you update a pipeline, Elastic Transcoder returns the values that you
* specified in the request.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/UpdatePipelineResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API UpdatePipelineResult
{
public:
UpdatePipelineResult();
UpdatePipelineResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
UpdatePipelineResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>The pipeline updated by this <code>UpdatePipelineResponse</code> call.</p>
*/
inline const Pipeline& GetPipeline() const{ return m_pipeline; }
/**
* <p>The pipeline updated by this <code>UpdatePipelineResponse</code> call.</p>
*/
inline void SetPipeline(const Pipeline& value) { m_pipeline = value; }
/**
* <p>The pipeline updated by this <code>UpdatePipelineResponse</code> call.</p>
*/
inline void SetPipeline(Pipeline&& value) { m_pipeline = std::move(value); }
/**
* <p>The pipeline updated by this <code>UpdatePipelineResponse</code> call.</p>
*/
inline UpdatePipelineResult& WithPipeline(const Pipeline& value) { SetPipeline(value); return *this;}
/**
* <p>The pipeline updated by this <code>UpdatePipelineResponse</code> call.</p>
*/
inline UpdatePipelineResult& WithPipeline(Pipeline&& value) { SetPipeline(std::move(value)); return *this;}
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline const Aws::Vector<Warning>& GetWarnings() const{ return m_warnings; }
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline void SetWarnings(const Aws::Vector<Warning>& value) { m_warnings = value; }
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline void SetWarnings(Aws::Vector<Warning>&& value) { m_warnings = std::move(value); }
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline UpdatePipelineResult& WithWarnings(const Aws::Vector<Warning>& value) { SetWarnings(value); return *this;}
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline UpdatePipelineResult& WithWarnings(Aws::Vector<Warning>&& value) { SetWarnings(std::move(value)); return *this;}
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline UpdatePipelineResult& AddWarnings(const Warning& value) { m_warnings.push_back(value); return *this; }
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional charges.</p>
*/
inline UpdatePipelineResult& AddWarnings(Warning&& value) { m_warnings.push_back(std::move(value)); return *this; }
private:
Pipeline m_pipeline;
Aws::Vector<Warning> m_warnings;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,147 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/ElasticTranscoderRequest.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>The <code>UpdatePipelineStatusRequest</code> structure.</p><p><h3>See
* Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/UpdatePipelineStatusRequest">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API UpdatePipelineStatusRequest : public ElasticTranscoderRequest
{
public:
UpdatePipelineStatusRequest();
// 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 "UpdatePipelineStatus"; }
Aws::String SerializePayload() const override;
/**
* <p>The identifier of the pipeline to update.</p>
*/
inline const Aws::String& GetId() const{ return m_id; }
/**
* <p>The identifier of the pipeline to update.</p>
*/
inline bool IdHasBeenSet() const { return m_idHasBeenSet; }
/**
* <p>The identifier of the pipeline to update.</p>
*/
inline void SetId(const Aws::String& value) { m_idHasBeenSet = true; m_id = value; }
/**
* <p>The identifier of the pipeline to update.</p>
*/
inline void SetId(Aws::String&& value) { m_idHasBeenSet = true; m_id = std::move(value); }
/**
* <p>The identifier of the pipeline to update.</p>
*/
inline void SetId(const char* value) { m_idHasBeenSet = true; m_id.assign(value); }
/**
* <p>The identifier of the pipeline to update.</p>
*/
inline UpdatePipelineStatusRequest& WithId(const Aws::String& value) { SetId(value); return *this;}
/**
* <p>The identifier of the pipeline to update.</p>
*/
inline UpdatePipelineStatusRequest& WithId(Aws::String&& value) { SetId(std::move(value)); return *this;}
/**
* <p>The identifier of the pipeline to update.</p>
*/
inline UpdatePipelineStatusRequest& WithId(const char* value) { SetId(value); return *this;}
/**
* <p>The desired status of the pipeline:</p> <ul> <li> <p> <code>Active</code>:
* The pipeline is processing jobs.</p> </li> <li> <p> <code>Paused</code>: The
* pipeline is not currently processing jobs.</p> </li> </ul>
*/
inline const Aws::String& GetStatus() const{ return m_status; }
/**
* <p>The desired status of the pipeline:</p> <ul> <li> <p> <code>Active</code>:
* The pipeline is processing jobs.</p> </li> <li> <p> <code>Paused</code>: The
* pipeline is not currently processing jobs.</p> </li> </ul>
*/
inline bool StatusHasBeenSet() const { return m_statusHasBeenSet; }
/**
* <p>The desired status of the pipeline:</p> <ul> <li> <p> <code>Active</code>:
* The pipeline is processing jobs.</p> </li> <li> <p> <code>Paused</code>: The
* pipeline is not currently processing jobs.</p> </li> </ul>
*/
inline void SetStatus(const Aws::String& value) { m_statusHasBeenSet = true; m_status = value; }
/**
* <p>The desired status of the pipeline:</p> <ul> <li> <p> <code>Active</code>:
* The pipeline is processing jobs.</p> </li> <li> <p> <code>Paused</code>: The
* pipeline is not currently processing jobs.</p> </li> </ul>
*/
inline void SetStatus(Aws::String&& value) { m_statusHasBeenSet = true; m_status = std::move(value); }
/**
* <p>The desired status of the pipeline:</p> <ul> <li> <p> <code>Active</code>:
* The pipeline is processing jobs.</p> </li> <li> <p> <code>Paused</code>: The
* pipeline is not currently processing jobs.</p> </li> </ul>
*/
inline void SetStatus(const char* value) { m_statusHasBeenSet = true; m_status.assign(value); }
/**
* <p>The desired status of the pipeline:</p> <ul> <li> <p> <code>Active</code>:
* The pipeline is processing jobs.</p> </li> <li> <p> <code>Paused</code>: The
* pipeline is not currently processing jobs.</p> </li> </ul>
*/
inline UpdatePipelineStatusRequest& WithStatus(const Aws::String& value) { SetStatus(value); return *this;}
/**
* <p>The desired status of the pipeline:</p> <ul> <li> <p> <code>Active</code>:
* The pipeline is processing jobs.</p> </li> <li> <p> <code>Paused</code>: The
* pipeline is not currently processing jobs.</p> </li> </ul>
*/
inline UpdatePipelineStatusRequest& WithStatus(Aws::String&& value) { SetStatus(std::move(value)); return *this;}
/**
* <p>The desired status of the pipeline:</p> <ul> <li> <p> <code>Active</code>:
* The pipeline is processing jobs.</p> </li> <li> <p> <code>Paused</code>: The
* pipeline is not currently processing jobs.</p> </li> </ul>
*/
inline UpdatePipelineStatusRequest& WithStatus(const char* value) { SetStatus(value); return *this;}
private:
Aws::String m_id;
bool m_idHasBeenSet;
Aws::String m_status;
bool m_statusHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,78 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/elastictranscoder/model/Pipeline.h>
#include <utility>
namespace Aws
{
template<typename RESULT_TYPE>
class AmazonWebServiceResult;
namespace Utils
{
namespace Json
{
class JsonValue;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>When you update status for a pipeline, Elastic Transcoder returns the values
* that you specified in the request.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/UpdatePipelineStatusResponse">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API UpdatePipelineStatusResult
{
public:
UpdatePipelineStatusResult();
UpdatePipelineStatusResult(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
UpdatePipelineStatusResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Json::JsonValue>& result);
/**
* <p>A section of the response body that provides information about the
* pipeline.</p>
*/
inline const Pipeline& GetPipeline() const{ return m_pipeline; }
/**
* <p>A section of the response body that provides information about the
* pipeline.</p>
*/
inline void SetPipeline(const Pipeline& value) { m_pipeline = value; }
/**
* <p>A section of the response body that provides information about the
* pipeline.</p>
*/
inline void SetPipeline(Pipeline&& value) { m_pipeline = std::move(value); }
/**
* <p>A section of the response body that provides information about the
* pipeline.</p>
*/
inline UpdatePipelineStatusResult& WithPipeline(const Pipeline& value) { SetPipeline(value); return *this;}
/**
* <p>A section of the response body that provides information about the
* pipeline.</p>
*/
inline UpdatePipelineStatusResult& WithPipeline(Pipeline&& value) { SetPipeline(std::move(value)); return *this;}
private:
Pipeline m_pipeline;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws

View File

@@ -0,0 +1,152 @@
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include <aws/elastictranscoder/ElasticTranscoder_EXPORTS.h>
#include <aws/core/utils/memory/stl/AWSString.h>
#include <utility>
namespace Aws
{
namespace Utils
{
namespace Json
{
class JsonValue;
class JsonView;
} // namespace Json
} // namespace Utils
namespace ElasticTranscoder
{
namespace Model
{
/**
* <p>Elastic Transcoder returns a warning if the resources used by your pipeline
* are not in the same region as the pipeline.</p> <p>Using resources in the same
* region, such as your Amazon S3 buckets, Amazon SNS notification topics, and AWS
* KMS key, reduces processing time and prevents cross-regional
* charges.</p><p><h3>See Also:</h3> <a
* href="http://docs.aws.amazon.com/goto/WebAPI/elastictranscoder-2012-09-25/Warning">AWS
* API Reference</a></p>
*/
class AWS_ELASTICTRANSCODER_API Warning
{
public:
Warning();
Warning(Aws::Utils::Json::JsonView jsonValue);
Warning& operator=(Aws::Utils::Json::JsonView jsonValue);
Aws::Utils::Json::JsonValue Jsonize() const;
/**
* <p>The code of the cross-regional warning.</p>
*/
inline const Aws::String& GetCode() const{ return m_code; }
/**
* <p>The code of the cross-regional warning.</p>
*/
inline bool CodeHasBeenSet() const { return m_codeHasBeenSet; }
/**
* <p>The code of the cross-regional warning.</p>
*/
inline void SetCode(const Aws::String& value) { m_codeHasBeenSet = true; m_code = value; }
/**
* <p>The code of the cross-regional warning.</p>
*/
inline void SetCode(Aws::String&& value) { m_codeHasBeenSet = true; m_code = std::move(value); }
/**
* <p>The code of the cross-regional warning.</p>
*/
inline void SetCode(const char* value) { m_codeHasBeenSet = true; m_code.assign(value); }
/**
* <p>The code of the cross-regional warning.</p>
*/
inline Warning& WithCode(const Aws::String& value) { SetCode(value); return *this;}
/**
* <p>The code of the cross-regional warning.</p>
*/
inline Warning& WithCode(Aws::String&& value) { SetCode(std::move(value)); return *this;}
/**
* <p>The code of the cross-regional warning.</p>
*/
inline Warning& WithCode(const char* value) { SetCode(value); return *this;}
/**
* <p>The message explaining what resources are in a different region from the
* pipeline.</p> <p>AWS KMS keys must be in the same region as the
* pipeline.</p>
*/
inline const Aws::String& GetMessage() const{ return m_message; }
/**
* <p>The message explaining what resources are in a different region from the
* pipeline.</p> <p>AWS KMS keys must be in the same region as the
* pipeline.</p>
*/
inline bool MessageHasBeenSet() const { return m_messageHasBeenSet; }
/**
* <p>The message explaining what resources are in a different region from the
* pipeline.</p> <p>AWS KMS keys must be in the same region as the
* pipeline.</p>
*/
inline void SetMessage(const Aws::String& value) { m_messageHasBeenSet = true; m_message = value; }
/**
* <p>The message explaining what resources are in a different region from the
* pipeline.</p> <p>AWS KMS keys must be in the same region as the
* pipeline.</p>
*/
inline void SetMessage(Aws::String&& value) { m_messageHasBeenSet = true; m_message = std::move(value); }
/**
* <p>The message explaining what resources are in a different region from the
* pipeline.</p> <p>AWS KMS keys must be in the same region as the
* pipeline.</p>
*/
inline void SetMessage(const char* value) { m_messageHasBeenSet = true; m_message.assign(value); }
/**
* <p>The message explaining what resources are in a different region from the
* pipeline.</p> <p>AWS KMS keys must be in the same region as the
* pipeline.</p>
*/
inline Warning& WithMessage(const Aws::String& value) { SetMessage(value); return *this;}
/**
* <p>The message explaining what resources are in a different region from the
* pipeline.</p> <p>AWS KMS keys must be in the same region as the
* pipeline.</p>
*/
inline Warning& WithMessage(Aws::String&& value) { SetMessage(std::move(value)); return *this;}
/**
* <p>The message explaining what resources are in a different region from the
* pipeline.</p> <p>AWS KMS keys must be in the same region as the
* pipeline.</p>
*/
inline Warning& WithMessage(const char* value) { SetMessage(value); return *this;}
private:
Aws::String m_code;
bool m_codeHasBeenSet;
Aws::String m_message;
bool m_messageHasBeenSet;
};
} // namespace Model
} // namespace ElasticTranscoder
} // namespace Aws