using System; using System.Collections.Generic; using Jellyfin.Data.Interfaces; namespace Jellyfin.Data.Entities.Libraries { /// /// An entity representing an episode. /// public class Episode : LibraryItem, IHasReleases { /// /// Initializes a new instance of the class. /// /// The season. public Episode(Season season) { if (season == null) { throw new ArgumentNullException(nameof(season)); } season.Episodes.Add(this); Releases = new HashSet(); EpisodeMetadata = new HashSet(); } /// /// Initializes a new instance of the class. /// /// /// Default constructor. Protected due to required properties, but present because EF needs it. /// protected Episode() { } /// /// Gets or sets the episode number. /// public int? EpisodeNumber { get; set; } /// public virtual ICollection Releases { get; protected set; } /// /// Gets or sets a collection containing the metadata for this episode. /// public virtual ICollection EpisodeMetadata { get; protected set; } } }