/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include The properties for a schedule.See Also:
AWS
* API Reference
The approximate duration of this program, in seconds.
*/ inline long long GetApproximateDurationSeconds() const{ return m_approximateDurationSeconds; } /** *The approximate duration of this program, in seconds.
*/ inline bool ApproximateDurationSecondsHasBeenSet() const { return m_approximateDurationSecondsHasBeenSet; } /** *The approximate duration of this program, in seconds.
*/ inline void SetApproximateDurationSeconds(long long value) { m_approximateDurationSecondsHasBeenSet = true; m_approximateDurationSeconds = value; } /** *The approximate duration of this program, in seconds.
*/ inline ScheduleEntry& WithApproximateDurationSeconds(long long value) { SetApproximateDurationSeconds(value); return *this;} /** *The approximate time that the program will start playing.
*/ inline const Aws::Utils::DateTime& GetApproximateStartTime() const{ return m_approximateStartTime; } /** *The approximate time that the program will start playing.
*/ inline bool ApproximateStartTimeHasBeenSet() const { return m_approximateStartTimeHasBeenSet; } /** *The approximate time that the program will start playing.
*/ inline void SetApproximateStartTime(const Aws::Utils::DateTime& value) { m_approximateStartTimeHasBeenSet = true; m_approximateStartTime = value; } /** *The approximate time that the program will start playing.
*/ inline void SetApproximateStartTime(Aws::Utils::DateTime&& value) { m_approximateStartTimeHasBeenSet = true; m_approximateStartTime = std::move(value); } /** *The approximate time that the program will start playing.
*/ inline ScheduleEntry& WithApproximateStartTime(const Aws::Utils::DateTime& value) { SetApproximateStartTime(value); return *this;} /** *The approximate time that the program will start playing.
*/ inline ScheduleEntry& WithApproximateStartTime(Aws::Utils::DateTime&& value) { SetApproximateStartTime(std::move(value)); return *this;} /** *The ARN of the program.
*/ inline const Aws::String& GetArn() const{ return m_arn; } /** *The ARN of the program.
*/ inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } /** *The ARN of the program.
*/ inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } /** *The ARN of the program.
*/ inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } /** *The ARN of the program.
*/ inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } /** *The ARN of the program.
*/ inline ScheduleEntry& WithArn(const Aws::String& value) { SetArn(value); return *this;} /** *The ARN of the program.
*/ inline ScheduleEntry& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} /** *The ARN of the program.
*/ inline ScheduleEntry& WithArn(const char* value) { SetArn(value); return *this;} /** *The name of the channel that uses this schedule.
*/ inline const Aws::String& GetChannelName() const{ return m_channelName; } /** *The name of the channel that uses this schedule.
*/ inline bool ChannelNameHasBeenSet() const { return m_channelNameHasBeenSet; } /** *The name of the channel that uses this schedule.
*/ inline void SetChannelName(const Aws::String& value) { m_channelNameHasBeenSet = true; m_channelName = value; } /** *The name of the channel that uses this schedule.
*/ inline void SetChannelName(Aws::String&& value) { m_channelNameHasBeenSet = true; m_channelName = std::move(value); } /** *The name of the channel that uses this schedule.
*/ inline void SetChannelName(const char* value) { m_channelNameHasBeenSet = true; m_channelName.assign(value); } /** *The name of the channel that uses this schedule.
*/ inline ScheduleEntry& WithChannelName(const Aws::String& value) { SetChannelName(value); return *this;} /** *The name of the channel that uses this schedule.
*/ inline ScheduleEntry& WithChannelName(Aws::String&& value) { SetChannelName(std::move(value)); return *this;} /** *The name of the channel that uses this schedule.
*/ inline ScheduleEntry& WithChannelName(const char* value) { SetChannelName(value); return *this;} /** *The name of the live source used for the program.
*/ inline const Aws::String& GetLiveSourceName() const{ return m_liveSourceName; } /** *The name of the live source used for the program.
*/ inline bool LiveSourceNameHasBeenSet() const { return m_liveSourceNameHasBeenSet; } /** *The name of the live source used for the program.
*/ inline void SetLiveSourceName(const Aws::String& value) { m_liveSourceNameHasBeenSet = true; m_liveSourceName = value; } /** *The name of the live source used for the program.
*/ inline void SetLiveSourceName(Aws::String&& value) { m_liveSourceNameHasBeenSet = true; m_liveSourceName = std::move(value); } /** *The name of the live source used for the program.
*/ inline void SetLiveSourceName(const char* value) { m_liveSourceNameHasBeenSet = true; m_liveSourceName.assign(value); } /** *The name of the live source used for the program.
*/ inline ScheduleEntry& WithLiveSourceName(const Aws::String& value) { SetLiveSourceName(value); return *this;} /** *The name of the live source used for the program.
*/ inline ScheduleEntry& WithLiveSourceName(Aws::String&& value) { SetLiveSourceName(std::move(value)); return *this;} /** *The name of the live source used for the program.
*/ inline ScheduleEntry& WithLiveSourceName(const char* value) { SetLiveSourceName(value); return *this;} /** *The name of the program.
*/ inline const Aws::String& GetProgramName() const{ return m_programName; } /** *The name of the program.
*/ inline bool ProgramNameHasBeenSet() const { return m_programNameHasBeenSet; } /** *The name of the program.
*/ inline void SetProgramName(const Aws::String& value) { m_programNameHasBeenSet = true; m_programName = value; } /** *The name of the program.
*/ inline void SetProgramName(Aws::String&& value) { m_programNameHasBeenSet = true; m_programName = std::move(value); } /** *The name of the program.
*/ inline void SetProgramName(const char* value) { m_programNameHasBeenSet = true; m_programName.assign(value); } /** *The name of the program.
*/ inline ScheduleEntry& WithProgramName(const Aws::String& value) { SetProgramName(value); return *this;} /** *The name of the program.
*/ inline ScheduleEntry& WithProgramName(Aws::String&& value) { SetProgramName(std::move(value)); return *this;} /** *The name of the program.
*/ inline ScheduleEntry& WithProgramName(const char* value) { SetProgramName(value); return *this;} /** *The schedule's ad break properties.
*/ inline const Aws::VectorThe schedule's ad break properties.
*/ inline bool ScheduleAdBreaksHasBeenSet() const { return m_scheduleAdBreaksHasBeenSet; } /** *The schedule's ad break properties.
*/ inline void SetScheduleAdBreaks(const Aws::VectorThe schedule's ad break properties.
*/ inline void SetScheduleAdBreaks(Aws::VectorThe schedule's ad break properties.
*/ inline ScheduleEntry& WithScheduleAdBreaks(const Aws::VectorThe schedule's ad break properties.
*/ inline ScheduleEntry& WithScheduleAdBreaks(Aws::VectorThe schedule's ad break properties.
*/ inline ScheduleEntry& AddScheduleAdBreaks(const ScheduleAdBreak& value) { m_scheduleAdBreaksHasBeenSet = true; m_scheduleAdBreaks.push_back(value); return *this; } /** *The schedule's ad break properties.
*/ inline ScheduleEntry& AddScheduleAdBreaks(ScheduleAdBreak&& value) { m_scheduleAdBreaksHasBeenSet = true; m_scheduleAdBreaks.push_back(std::move(value)); return *this; } /** *The type of schedule entry.
*/ inline const ScheduleEntryType& GetScheduleEntryType() const{ return m_scheduleEntryType; } /** *The type of schedule entry.
*/ inline bool ScheduleEntryTypeHasBeenSet() const { return m_scheduleEntryTypeHasBeenSet; } /** *The type of schedule entry.
*/ inline void SetScheduleEntryType(const ScheduleEntryType& value) { m_scheduleEntryTypeHasBeenSet = true; m_scheduleEntryType = value; } /** *The type of schedule entry.
*/ inline void SetScheduleEntryType(ScheduleEntryType&& value) { m_scheduleEntryTypeHasBeenSet = true; m_scheduleEntryType = std::move(value); } /** *The type of schedule entry.
*/ inline ScheduleEntry& WithScheduleEntryType(const ScheduleEntryType& value) { SetScheduleEntryType(value); return *this;} /** *The type of schedule entry.
*/ inline ScheduleEntry& WithScheduleEntryType(ScheduleEntryType&& value) { SetScheduleEntryType(std::move(value)); return *this;} /** *The name of the source location.
*/ inline const Aws::String& GetSourceLocationName() const{ return m_sourceLocationName; } /** *The name of the source location.
*/ inline bool SourceLocationNameHasBeenSet() const { return m_sourceLocationNameHasBeenSet; } /** *The name of the source location.
*/ inline void SetSourceLocationName(const Aws::String& value) { m_sourceLocationNameHasBeenSet = true; m_sourceLocationName = value; } /** *The name of the source location.
*/ inline void SetSourceLocationName(Aws::String&& value) { m_sourceLocationNameHasBeenSet = true; m_sourceLocationName = std::move(value); } /** *The name of the source location.
*/ inline void SetSourceLocationName(const char* value) { m_sourceLocationNameHasBeenSet = true; m_sourceLocationName.assign(value); } /** *The name of the source location.
*/ inline ScheduleEntry& WithSourceLocationName(const Aws::String& value) { SetSourceLocationName(value); return *this;} /** *The name of the source location.
*/ inline ScheduleEntry& WithSourceLocationName(Aws::String&& value) { SetSourceLocationName(std::move(value)); return *this;} /** *The name of the source location.
*/ inline ScheduleEntry& WithSourceLocationName(const char* value) { SetSourceLocationName(value); return *this;} /** *The name of the VOD source.
*/ inline const Aws::String& GetVodSourceName() const{ return m_vodSourceName; } /** *The name of the VOD source.
*/ inline bool VodSourceNameHasBeenSet() const { return m_vodSourceNameHasBeenSet; } /** *The name of the VOD source.
*/ inline void SetVodSourceName(const Aws::String& value) { m_vodSourceNameHasBeenSet = true; m_vodSourceName = value; } /** *The name of the VOD source.
*/ inline void SetVodSourceName(Aws::String&& value) { m_vodSourceNameHasBeenSet = true; m_vodSourceName = std::move(value); } /** *The name of the VOD source.
*/ inline void SetVodSourceName(const char* value) { m_vodSourceNameHasBeenSet = true; m_vodSourceName.assign(value); } /** *The name of the VOD source.
*/ inline ScheduleEntry& WithVodSourceName(const Aws::String& value) { SetVodSourceName(value); return *this;} /** *The name of the VOD source.
*/ inline ScheduleEntry& WithVodSourceName(Aws::String&& value) { SetVodSourceName(std::move(value)); return *this;} /** *The name of the VOD source.
*/ inline ScheduleEntry& WithVodSourceName(const char* value) { SetVodSourceName(value); return *this;} private: long long m_approximateDurationSeconds; bool m_approximateDurationSecondsHasBeenSet = false; Aws::Utils::DateTime m_approximateStartTime; bool m_approximateStartTimeHasBeenSet = false; Aws::String m_arn; bool m_arnHasBeenSet = false; Aws::String m_channelName; bool m_channelNameHasBeenSet = false; Aws::String m_liveSourceName; bool m_liveSourceNameHasBeenSet = false; Aws::String m_programName; bool m_programNameHasBeenSet = false; Aws::Vector