/*
* 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
{
///
/// Ad break configuration parameters.
///
public partial class AdBreak
{
private List _adBreakMetadata = new List();
private MessageType _messageType;
private long? _offsetMillis;
private SlateSource _slate;
private SpliceInsertMessage _spliceInsertMessage;
private TimeSignalMessage _timeSignalMessage;
///
/// Gets and sets the property AdBreakMetadata.
///
/// Defines a list of key/value pairs that MediaTailor generates within the EXT-X-ASSET
tag
/// for SCTE35_ENHANCED
output.
///
///
public List AdBreakMetadata
{
get { return this._adBreakMetadata; }
set { this._adBreakMetadata = value; }
}
// Check to see if AdBreakMetadata property is set
internal bool IsSetAdBreakMetadata()
{
return this._adBreakMetadata != null && this._adBreakMetadata.Count > 0;
}
///
/// Gets and sets the property MessageType.
///
/// The SCTE-35 ad insertion type. Accepted value: SPLICE_INSERT
, TIME_SIGNAL
.
///
///
public MessageType MessageType
{
get { return this._messageType; }
set { this._messageType = value; }
}
// Check to see if MessageType property is set
internal bool IsSetMessageType()
{
return this._messageType != null;
}
///
/// Gets and sets the property OffsetMillis.
///
/// How long (in milliseconds) after the beginning of the program that an ad starts. This
/// value must fall within 100ms of a segment boundary, otherwise the ad break will be
/// skipped.
///
///
public long OffsetMillis
{
get { return this._offsetMillis.GetValueOrDefault(); }
set { this._offsetMillis = value; }
}
// Check to see if OffsetMillis property is set
internal bool IsSetOffsetMillis()
{
return this._offsetMillis.HasValue;
}
///
/// Gets and sets the property Slate.
///
/// Ad break slate configuration.
///
///
public SlateSource Slate
{
get { return this._slate; }
set { this._slate = value; }
}
// Check to see if Slate property is set
internal bool IsSetSlate()
{
return this._slate != null;
}
///
/// Gets and sets the property SpliceInsertMessage.
///
/// This defines the SCTE-35 splice_insert()
message inserted around the
/// ad. For information about using splice_insert()
, see the SCTE-35 specficiaiton,
/// section 9.7.3.1.
///
///
public SpliceInsertMessage SpliceInsertMessage
{
get { return this._spliceInsertMessage; }
set { this._spliceInsertMessage = value; }
}
// Check to see if SpliceInsertMessage property is set
internal bool IsSetSpliceInsertMessage()
{
return this._spliceInsertMessage != null;
}
///
/// Gets and sets the property TimeSignalMessage.
///
/// Defines the SCTE-35 time_signal
message inserted around the ad.
///
///
///
/// Programs on a channel's schedule can be configured with one or more ad breaks. You
/// can attach a splice_insert
SCTE-35 message to the ad break. This message
/// provides basic metadata about the ad break.
///
///
///
/// See section 9.7.4 of the 2022 SCTE-35 specification for more information.
///
///
public TimeSignalMessage TimeSignalMessage
{
get { return this._timeSignalMessage; }
set { this._timeSignalMessage = value; }
}
// Check to see if TimeSignalMessage property is set
internal bool IsSetTimeSignalMessage()
{
return this._timeSignalMessage != null;
}
}
}