| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 | #nullable disable#pragma warning disable CS1591using System;using System.Collections.Generic;using System.Text.Json.Serialization;using Jellyfin.Extensions;using MediaBrowser.Model.LiveTv;namespace MediaBrowser.Controller.LiveTv{    public class TimerInfo    {        public TimerInfo()        {            Genres = Array.Empty<string>();            KeepUntil = KeepUntil.UntilDeleted;            ProviderIds = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);            SeriesProviderIds = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);            Tags = Array.Empty<string>();        }        public Dictionary<string, string> ProviderIds { get; set; }        public Dictionary<string, string> SeriesProviderIds { get; set; }        public string[] Tags { get; set; }        /// <summary>        /// Gets or sets the id of the recording.        /// </summary>        public string Id { get; set; }        /// <summary>        /// Gets or sets the series timer identifier.        /// </summary>        public string SeriesTimerId { get; set; }        /// <summary>        /// Gets or sets the channelId of the recording.        /// </summary>        public string ChannelId { get; set; }        /// <summary>        /// Gets or sets the program identifier.        /// </summary>        /// <value>The program identifier.</value>        public string ProgramId { get; set; }        public string ShowId { get; set; }        /// <summary>        /// Gets or sets the name of the recording.        /// </summary>        public string Name { get; set; }        /// <summary>        /// Gets or sets the description of the recording.        /// </summary>        public string Overview { get; set; }        public string SeriesId { get; set; }        /// <summary>        /// Gets or sets the start date of the recording, in UTC.        /// </summary>        public DateTime StartDate { get; set; }        /// <summary>        /// Gets or sets the end date of the recording, in UTC.        /// </summary>        public DateTime EndDate { get; set; }        /// <summary>        /// Gets or sets the status.        /// </summary>        /// <value>The status.</value>        public RecordingStatus Status { get; set; }        /// <summary>        /// Gets or sets the pre padding seconds.        /// </summary>        /// <value>The pre padding seconds.</value>        public int PrePaddingSeconds { get; set; }        /// <summary>        /// Gets or sets the post padding seconds.        /// </summary>        /// <value>The post padding seconds.</value>        public int PostPaddingSeconds { get; set; }        /// <summary>        /// Gets or sets a value indicating whether this instance is pre padding required.        /// </summary>        /// <value><c>true</c> if this instance is pre padding required; otherwise, <c>false</c>.</value>        public bool IsPrePaddingRequired { get; set; }        /// <summary>        /// Gets or sets a value indicating whether this instance is post padding required.        /// </summary>        /// <value><c>true</c> if this instance is post padding required; otherwise, <c>false</c>.</value>        public bool IsPostPaddingRequired { get; set; }        public bool IsManual { get; set; }        /// <summary>        /// Gets or sets the priority.        /// </summary>        /// <value>The priority.</value>        public int Priority { get; set; }        public int RetryCount { get; set; }        // Program properties        public int? SeasonNumber { get; set; }        /// <summary>        /// Gets or sets the episode number.        /// </summary>        /// <value>The episode number.</value>        public int? EpisodeNumber { get; set; }        public bool IsMovie { get; set; }        public bool IsKids => Tags.Contains("Kids", StringComparison.OrdinalIgnoreCase);        public bool IsSports => Tags.Contains("Sports", StringComparison.OrdinalIgnoreCase);        public bool IsNews => Tags.Contains("News", StringComparison.OrdinalIgnoreCase);        public bool IsSeries { get; set; }        /// <summary>        /// Gets a value indicating whether this instance is live.        /// </summary>        /// <value><c>true</c> if this instance is live; otherwise, <c>false</c>.</value>        [JsonIgnore]        public bool IsLive => Tags.Contains("Live", StringComparison.OrdinalIgnoreCase);        [JsonIgnore]        public bool IsPremiere => Tags.Contains("Premiere", StringComparison.OrdinalIgnoreCase);        public int? ProductionYear { get; set; }        public string EpisodeTitle { get; set; }        public DateTime? OriginalAirDate { get; set; }        public bool IsProgramSeries { get; set; }        public bool IsRepeat { get; set; }        public string HomePageUrl { get; set; }        public float? CommunityRating { get; set; }        public string OfficialRating { get; set; }        public string[] Genres { get; set; }        public string RecordingPath { get; set; }        public KeepUntil KeepUntil { get; set; }    }}
 |