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

The Amazon Simple Notification Service (Amazon SNS) topic or topics to notify * in order to report job status.

To receive notifications, you * must also subscribe to the new topic in the Amazon SNS console.

*

See Also:

AWS * API Reference

*/ class Notifications { public: AWS_ELASTICTRANSCODER_API Notifications(); AWS_ELASTICTRANSCODER_API Notifications(Aws::Utils::Json::JsonView jsonValue); AWS_ELASTICTRANSCODER_API Notifications& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_ELASTICTRANSCODER_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The Amazon Simple Notification Service (Amazon SNS) topic that you want to * notify when Elastic Transcoder has started to process the job.

*/ inline const Aws::String& GetProgressing() const{ return m_progressing; } /** *

The Amazon Simple Notification Service (Amazon SNS) topic that you want to * notify when Elastic Transcoder has started to process the job.

*/ inline bool ProgressingHasBeenSet() const { return m_progressingHasBeenSet; } /** *

The Amazon Simple Notification Service (Amazon SNS) topic that you want to * notify when Elastic Transcoder has started to process the job.

*/ inline void SetProgressing(const Aws::String& value) { m_progressingHasBeenSet = true; m_progressing = value; } /** *

The Amazon Simple Notification Service (Amazon SNS) topic that you want to * notify when Elastic Transcoder has started to process the job.

*/ inline void SetProgressing(Aws::String&& value) { m_progressingHasBeenSet = true; m_progressing = std::move(value); } /** *

The Amazon Simple Notification Service (Amazon SNS) topic that you want to * notify when Elastic Transcoder has started to process the job.

*/ inline void SetProgressing(const char* value) { m_progressingHasBeenSet = true; m_progressing.assign(value); } /** *

The Amazon Simple Notification Service (Amazon SNS) topic that you want to * notify when Elastic Transcoder has started to process the job.

*/ inline Notifications& WithProgressing(const Aws::String& value) { SetProgressing(value); return *this;} /** *

The Amazon Simple Notification Service (Amazon SNS) topic that you want to * notify when Elastic Transcoder has started to process the job.

*/ inline Notifications& WithProgressing(Aws::String&& value) { SetProgressing(std::move(value)); return *this;} /** *

The Amazon Simple Notification Service (Amazon SNS) topic that you want to * notify when Elastic Transcoder has started to process the job.

*/ inline Notifications& WithProgressing(const char* value) { SetProgressing(value); return *this;} /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder has * finished processing the job.

*/ inline const Aws::String& GetCompleted() const{ return m_completed; } /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder has * finished processing the job.

*/ inline bool CompletedHasBeenSet() const { return m_completedHasBeenSet; } /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder has * finished processing the job.

*/ inline void SetCompleted(const Aws::String& value) { m_completedHasBeenSet = true; m_completed = value; } /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder has * finished processing the job.

*/ inline void SetCompleted(Aws::String&& value) { m_completedHasBeenSet = true; m_completed = std::move(value); } /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder has * finished processing the job.

*/ inline void SetCompleted(const char* value) { m_completedHasBeenSet = true; m_completed.assign(value); } /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder has * finished processing the job.

*/ inline Notifications& WithCompleted(const Aws::String& value) { SetCompleted(value); return *this;} /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder has * finished processing the job.

*/ inline Notifications& WithCompleted(Aws::String&& value) { SetCompleted(std::move(value)); return *this;} /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder has * finished processing the job.

*/ inline Notifications& WithCompleted(const char* value) { SetCompleted(value); return *this;} /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters a warning condition.

*/ inline const Aws::String& GetWarning() const{ return m_warning; } /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters a warning condition.

*/ inline bool WarningHasBeenSet() const { return m_warningHasBeenSet; } /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters a warning condition.

*/ inline void SetWarning(const Aws::String& value) { m_warningHasBeenSet = true; m_warning = value; } /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters a warning condition.

*/ inline void SetWarning(Aws::String&& value) { m_warningHasBeenSet = true; m_warning = std::move(value); } /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters a warning condition.

*/ inline void SetWarning(const char* value) { m_warningHasBeenSet = true; m_warning.assign(value); } /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters a warning condition.

*/ inline Notifications& WithWarning(const Aws::String& value) { SetWarning(value); return *this;} /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters a warning condition.

*/ inline Notifications& WithWarning(Aws::String&& value) { SetWarning(std::move(value)); return *this;} /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters a warning condition.

*/ inline Notifications& WithWarning(const char* value) { SetWarning(value); return *this;} /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters an error condition.

*/ inline const Aws::String& GetError() const{ return m_error; } /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters an error condition.

*/ inline bool ErrorHasBeenSet() const { return m_errorHasBeenSet; } /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters an error condition.

*/ inline void SetError(const Aws::String& value) { m_errorHasBeenSet = true; m_error = value; } /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters an error condition.

*/ inline void SetError(Aws::String&& value) { m_errorHasBeenSet = true; m_error = std::move(value); } /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters an error condition.

*/ inline void SetError(const char* value) { m_errorHasBeenSet = true; m_error.assign(value); } /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters an error condition.

*/ inline Notifications& WithError(const Aws::String& value) { SetError(value); return *this;} /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters an error condition.

*/ inline Notifications& WithError(Aws::String&& value) { SetError(std::move(value)); return *this;} /** *

The Amazon SNS topic that you want to notify when Elastic Transcoder * encounters an error condition.

*/ inline Notifications& WithError(const char* value) { SetError(value); return *this;} private: Aws::String m_progressing; bool m_progressingHasBeenSet = false; Aws::String m_completed; bool m_completedHasBeenSet = false; Aws::String m_warning; bool m_warningHasBeenSet = false; Aws::String m_error; bool m_errorHasBeenSet = false; }; } // namespace Model } // namespace ElasticTranscoder } // namespace Aws