/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include #include namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace MediaTailor { namespace Model { class CreateProgramResult { public: AWS_MEDIATAILOR_API CreateProgramResult(); AWS_MEDIATAILOR_API CreateProgramResult(const Aws::AmazonWebServiceResult& result); AWS_MEDIATAILOR_API CreateProgramResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The ad break configuration settings.

*/ inline const Aws::Vector& GetAdBreaks() const{ return m_adBreaks; } /** *

The ad break configuration settings.

*/ inline void SetAdBreaks(const Aws::Vector& value) { m_adBreaks = value; } /** *

The ad break configuration settings.

*/ inline void SetAdBreaks(Aws::Vector&& value) { m_adBreaks = std::move(value); } /** *

The ad break configuration settings.

*/ inline CreateProgramResult& WithAdBreaks(const Aws::Vector& value) { SetAdBreaks(value); return *this;} /** *

The ad break configuration settings.

*/ inline CreateProgramResult& WithAdBreaks(Aws::Vector&& value) { SetAdBreaks(std::move(value)); return *this;} /** *

The ad break configuration settings.

*/ inline CreateProgramResult& AddAdBreaks(const AdBreak& value) { m_adBreaks.push_back(value); return *this; } /** *

The ad break configuration settings.

*/ inline CreateProgramResult& AddAdBreaks(AdBreak&& value) { m_adBreaks.push_back(std::move(value)); return *this; } /** *

The ARN to assign to the program.

*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *

The ARN to assign to the program.

*/ inline void SetArn(const Aws::String& value) { m_arn = value; } /** *

The ARN to assign to the program.

*/ inline void SetArn(Aws::String&& value) { m_arn = std::move(value); } /** *

The ARN to assign to the program.

*/ inline void SetArn(const char* value) { m_arn.assign(value); } /** *

The ARN to assign to the program.

*/ inline CreateProgramResult& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *

The ARN to assign to the program.

*/ inline CreateProgramResult& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *

The ARN to assign to the program.

*/ inline CreateProgramResult& WithArn(const char* value) { SetArn(value); return *this;} /** *

The name to assign to the channel for this program.

*/ inline const Aws::String& GetChannelName() const{ return m_channelName; } /** *

The name to assign to the channel for this program.

*/ inline void SetChannelName(const Aws::String& value) { m_channelName = value; } /** *

The name to assign to the channel for this program.

*/ inline void SetChannelName(Aws::String&& value) { m_channelName = std::move(value); } /** *

The name to assign to the channel for this program.

*/ inline void SetChannelName(const char* value) { m_channelName.assign(value); } /** *

The name to assign to the channel for this program.

*/ inline CreateProgramResult& WithChannelName(const Aws::String& value) { SetChannelName(value); return *this;} /** *

The name to assign to the channel for this program.

*/ inline CreateProgramResult& WithChannelName(Aws::String&& value) { SetChannelName(std::move(value)); return *this;} /** *

The name to assign to the channel for this program.

*/ inline CreateProgramResult& WithChannelName(const char* value) { SetChannelName(value); return *this;} /** *

The clip range configuration settings.

*/ inline const ClipRange& GetClipRange() const{ return m_clipRange; } /** *

The clip range configuration settings.

*/ inline void SetClipRange(const ClipRange& value) { m_clipRange = value; } /** *

The clip range configuration settings.

*/ inline void SetClipRange(ClipRange&& value) { m_clipRange = std::move(value); } /** *

The clip range configuration settings.

*/ inline CreateProgramResult& WithClipRange(const ClipRange& value) { SetClipRange(value); return *this;} /** *

The clip range configuration settings.

*/ inline CreateProgramResult& WithClipRange(ClipRange&& value) { SetClipRange(std::move(value)); return *this;} /** *

The time the program was created.

*/ inline const Aws::Utils::DateTime& GetCreationTime() const{ return m_creationTime; } /** *

The time the program was created.

*/ inline void SetCreationTime(const Aws::Utils::DateTime& value) { m_creationTime = value; } /** *

The time the program was created.

*/ inline void SetCreationTime(Aws::Utils::DateTime&& value) { m_creationTime = std::move(value); } /** *

The time the program was created.

*/ inline CreateProgramResult& WithCreationTime(const Aws::Utils::DateTime& value) { SetCreationTime(value); return *this;} /** *

The time the program was created.

*/ inline CreateProgramResult& WithCreationTime(Aws::Utils::DateTime&& value) { SetCreationTime(std::move(value)); return *this;} /** *

The duration of the live program in milliseconds.

*/ inline long long GetDurationMillis() const{ return m_durationMillis; } /** *

The duration of the live program in milliseconds.

*/ inline void SetDurationMillis(long long value) { m_durationMillis = value; } /** *

The duration of the live program in milliseconds.

*/ inline CreateProgramResult& WithDurationMillis(long long value) { SetDurationMillis(value); return *this;} /** *

The name of the LiveSource for this Program.

*/ inline const Aws::String& GetLiveSourceName() const{ return m_liveSourceName; } /** *

The name of the LiveSource for this Program.

*/ inline void SetLiveSourceName(const Aws::String& value) { m_liveSourceName = value; } /** *

The name of the LiveSource for this Program.

*/ inline void SetLiveSourceName(Aws::String&& value) { m_liveSourceName = std::move(value); } /** *

The name of the LiveSource for this Program.

*/ inline void SetLiveSourceName(const char* value) { m_liveSourceName.assign(value); } /** *

The name of the LiveSource for this Program.

*/ inline CreateProgramResult& WithLiveSourceName(const Aws::String& value) { SetLiveSourceName(value); return *this;} /** *

The name of the LiveSource for this Program.

*/ inline CreateProgramResult& WithLiveSourceName(Aws::String&& value) { SetLiveSourceName(std::move(value)); return *this;} /** *

The name of the LiveSource for this Program.

*/ inline CreateProgramResult& WithLiveSourceName(const char* value) { SetLiveSourceName(value); return *this;} /** *

The name to assign to this program.

*/ inline const Aws::String& GetProgramName() const{ return m_programName; } /** *

The name to assign to this program.

*/ inline void SetProgramName(const Aws::String& value) { m_programName = value; } /** *

The name to assign to this program.

*/ inline void SetProgramName(Aws::String&& value) { m_programName = std::move(value); } /** *

The name to assign to this program.

*/ inline void SetProgramName(const char* value) { m_programName.assign(value); } /** *

The name to assign to this program.

*/ inline CreateProgramResult& WithProgramName(const Aws::String& value) { SetProgramName(value); return *this;} /** *

The name to assign to this program.

*/ inline CreateProgramResult& WithProgramName(Aws::String&& value) { SetProgramName(std::move(value)); return *this;} /** *

The name to assign to this program.

*/ inline CreateProgramResult& WithProgramName(const char* value) { SetProgramName(value); return *this;} /** *

The scheduled start time for this Program.

*/ inline const Aws::Utils::DateTime& GetScheduledStartTime() const{ return m_scheduledStartTime; } /** *

The scheduled start time for this Program.

*/ inline void SetScheduledStartTime(const Aws::Utils::DateTime& value) { m_scheduledStartTime = value; } /** *

The scheduled start time for this Program.

*/ inline void SetScheduledStartTime(Aws::Utils::DateTime&& value) { m_scheduledStartTime = std::move(value); } /** *

The scheduled start time for this Program.

*/ inline CreateProgramResult& WithScheduledStartTime(const Aws::Utils::DateTime& value) { SetScheduledStartTime(value); return *this;} /** *

The scheduled start time for this Program.

*/ inline CreateProgramResult& WithScheduledStartTime(Aws::Utils::DateTime&& value) { SetScheduledStartTime(std::move(value)); return *this;} /** *

The name to assign to the source location for this program.

*/ inline const Aws::String& GetSourceLocationName() const{ return m_sourceLocationName; } /** *

The name to assign to the source location for this program.

*/ inline void SetSourceLocationName(const Aws::String& value) { m_sourceLocationName = value; } /** *

The name to assign to the source location for this program.

*/ inline void SetSourceLocationName(Aws::String&& value) { m_sourceLocationName = std::move(value); } /** *

The name to assign to the source location for this program.

*/ inline void SetSourceLocationName(const char* value) { m_sourceLocationName.assign(value); } /** *

The name to assign to the source location for this program.

*/ inline CreateProgramResult& WithSourceLocationName(const Aws::String& value) { SetSourceLocationName(value); return *this;} /** *

The name to assign to the source location for this program.

*/ inline CreateProgramResult& WithSourceLocationName(Aws::String&& value) { SetSourceLocationName(std::move(value)); return *this;} /** *

The name to assign to the source location for this program.

*/ inline CreateProgramResult& WithSourceLocationName(const char* value) { SetSourceLocationName(value); return *this;} /** *

The name that's used to refer to a VOD source.

*/ inline const Aws::String& GetVodSourceName() const{ return m_vodSourceName; } /** *

The name that's used to refer to a VOD source.

*/ inline void SetVodSourceName(const Aws::String& value) { m_vodSourceName = value; } /** *

The name that's used to refer to a VOD source.

*/ inline void SetVodSourceName(Aws::String&& value) { m_vodSourceName = std::move(value); } /** *

The name that's used to refer to a VOD source.

*/ inline void SetVodSourceName(const char* value) { m_vodSourceName.assign(value); } /** *

The name that's used to refer to a VOD source.

*/ inline CreateProgramResult& WithVodSourceName(const Aws::String& value) { SetVodSourceName(value); return *this;} /** *

The name that's used to refer to a VOD source.

*/ inline CreateProgramResult& WithVodSourceName(Aws::String&& value) { SetVodSourceName(std::move(value)); return *this;} /** *

The name that's used to refer to a VOD source.

*/ inline CreateProgramResult& WithVodSourceName(const char* value) { SetVodSourceName(value); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline CreateProgramResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline CreateProgramResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline CreateProgramResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: Aws::Vector m_adBreaks; Aws::String m_arn; Aws::String m_channelName; ClipRange m_clipRange; Aws::Utils::DateTime m_creationTime; long long m_durationMillis; Aws::String m_liveSourceName; Aws::String m_programName; Aws::Utils::DateTime m_scheduledStartTime; Aws::String m_sourceLocationName; Aws::String m_vodSourceName; Aws::String m_requestId; }; } // namespace Model } // namespace MediaTailor } // namespace Aws