/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the mediatailor-2018-04-23.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.MediaTailor.Model { /// /// Program transition configuration. /// public partial class Transition { private long? _durationMillis; private RelativePosition _relativePosition; private string _relativeProgram; private long? _scheduledStartTimeMillis; private string _type; /// /// Gets and sets the property DurationMillis. /// /// The duration of the live program in seconds. /// /// public long DurationMillis { get { return this._durationMillis.GetValueOrDefault(); } set { this._durationMillis = value; } } // Check to see if DurationMillis property is set internal bool IsSetDurationMillis() { return this._durationMillis.HasValue; } /// /// Gets and sets the property RelativePosition. /// /// The position where this program will be inserted relative to the RelativePosition. /// /// [AWSProperty(Required=true)] public RelativePosition RelativePosition { get { return this._relativePosition; } set { this._relativePosition = value; } } // Check to see if RelativePosition property is set internal bool IsSetRelativePosition() { return this._relativePosition != null; } /// /// Gets and sets the property RelativeProgram. /// /// The name of the program that this program will be inserted next to, as defined by /// RelativePosition. /// /// public string RelativeProgram { get { return this._relativeProgram; } set { this._relativeProgram = value; } } // Check to see if RelativeProgram property is set internal bool IsSetRelativeProgram() { return this._relativeProgram != null; } /// /// Gets and sets the property ScheduledStartTimeMillis. /// /// The date and time that the program is scheduled to start, in epoch milliseconds. /// /// public long ScheduledStartTimeMillis { get { return this._scheduledStartTimeMillis.GetValueOrDefault(); } set { this._scheduledStartTimeMillis = value; } } // Check to see if ScheduledStartTimeMillis property is set internal bool IsSetScheduledStartTimeMillis() { return this._scheduledStartTimeMillis.HasValue; } /// /// Gets and sets the property Type. /// /// Defines when the program plays in the schedule. You can set the value to ABSOLUTE /// or RELATIVE. /// /// /// /// ABSOLUTE - The program plays at a specific wall clock time. This setting /// can only be used for channels using the LINEAR PlaybackMode. /// /// /// /// Note the following considerations when using ABSOLUTE transitions: /// /// /// /// If the preceding program in the schedule has a duration that extends past the wall /// clock time, MediaTailor truncates the preceding program on a common segment boundary. /// /// /// /// If there are gaps in playback, MediaTailor plays the FillerSlate you /// configured for your linear channel. /// /// /// /// RELATIVE - The program is inserted into the schedule either before or /// after a program that you specify via RelativePosition. /// /// [AWSProperty(Required=true)] public string Type { get { return this._type; } set { this._type = value; } } // Check to see if Type property is set internal bool IsSetType() { return this._type != null; } } }