diff options
Diffstat (limited to 'MediaBrowser.Controller/Entities')
| -rw-r--r-- | MediaBrowser.Controller/Entities/Audio/Audio.cs | 14 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/BaseItem.cs | 27 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/Book.cs | 15 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/IHasMediaStreams.cs | 10 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/IHasScreenshots.cs | 5 | ||||
| -rw-r--r-- | MediaBrowser.Controller/Entities/Video.cs | 37 |
6 files changed, 56 insertions, 52 deletions
diff --git a/MediaBrowser.Controller/Entities/Audio/Audio.cs b/MediaBrowser.Controller/Entities/Audio/Audio.cs index 2a7aa4fea..63c907c1f 100644 --- a/MediaBrowser.Controller/Entities/Audio/Audio.cs +++ b/MediaBrowser.Controller/Entities/Audio/Audio.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Entities; -using System; +using System; using System.Collections.Generic; using System.Linq; using System.Runtime.Serialization; @@ -13,7 +12,6 @@ namespace MediaBrowser.Controller.Entities.Audio { public Audio() { - MediaStreams = new List<MediaStream>(); Artists = new List<string>(); } @@ -22,13 +20,13 @@ namespace MediaBrowser.Controller.Entities.Audio /// </summary> /// <value>The language.</value> public string Language { get; set; } - + /// <summary> - /// Gets or sets the media streams. + /// Gets or sets a value indicating whether this instance has embedded image. /// </summary> - /// <value>The media streams.</value> - public List<MediaStream> MediaStreams { get; set; } - + /// <value><c>true</c> if this instance has embedded image; otherwise, <c>false</c>.</value> + public bool HasEmbeddedImage { get; set; } + /// <summary> /// Override this to true if class should be grouped under a container in indicies /// The container class should be defined via IndexContainer diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs index 2be4c7708..541887598 100644 --- a/MediaBrowser.Controller/Entities/BaseItem.cs +++ b/MediaBrowser.Controller/Entities/BaseItem.cs @@ -154,6 +154,8 @@ namespace MediaBrowser.Controller.Entities /// <value>The date modified.</value> public DateTime DateModified { get; set; } + public DateTime DateLastSaved { get; set; } + /// <summary> /// The logger /// </summary> @@ -200,29 +202,6 @@ namespace MediaBrowser.Controller.Entities } /// <summary> - /// The _provider data - /// </summary> - private Dictionary<Guid, BaseProviderInfo> _providerData; - /// <summary> - /// Holds persistent data for providers like last refresh date. - /// Providers can use this to determine if they need to refresh. - /// The BaseProviderInfo class can be extended to hold anything a provider may need. - /// Keyed by a unique provider ID. - /// </summary> - /// <value>The provider data.</value> - public Dictionary<Guid, BaseProviderInfo> ProviderData - { - get - { - return _providerData ?? (_providerData = new Dictionary<Guid, BaseProviderInfo>()); - } - set - { - _providerData = value; - } - } - - /// <summary> /// Gets the type of the media. /// </summary> /// <value>The type of the media.</value> @@ -827,7 +806,7 @@ namespace MediaBrowser.Controller.Entities /// <returns>true if a provider reports we changed</returns> public virtual async Task<bool> RefreshMetadata(CancellationToken cancellationToken, bool forceSave = false, bool forceRefresh = false, bool allowSlowProviders = true, bool resetResolveArgs = true) { - if (resetResolveArgs || ResolveArgs == null) + if (resetResolveArgs) { // Reload this ResetResolveArgs(); diff --git a/MediaBrowser.Controller/Entities/Book.cs b/MediaBrowser.Controller/Entities/Book.cs index 20df731a7..87b90b824 100644 --- a/MediaBrowser.Controller/Entities/Book.cs +++ b/MediaBrowser.Controller/Entities/Book.cs @@ -1,7 +1,8 @@ - +using System.Collections.Generic; + namespace MediaBrowser.Controller.Entities { - public class Book : BaseItem + public class Book : BaseItem, IHasTags { public override string MediaType { @@ -10,6 +11,11 @@ namespace MediaBrowser.Controller.Entities return Model.Entities.MediaType.Book; } } + /// <summary> + /// Gets or sets the tags. + /// </summary> + /// <value>The tags.</value> + public List<string> Tags { get; set; } public string SeriesName { get; set; } @@ -31,5 +37,10 @@ namespace MediaBrowser.Controller.Entities return !IsInMixedFolder; } } + + public Book() + { + Tags = new List<string>(); + } } } diff --git a/MediaBrowser.Controller/Entities/IHasMediaStreams.cs b/MediaBrowser.Controller/Entities/IHasMediaStreams.cs new file mode 100644 index 000000000..b700ef628 --- /dev/null +++ b/MediaBrowser.Controller/Entities/IHasMediaStreams.cs @@ -0,0 +1,10 @@ + +namespace MediaBrowser.Controller.Entities +{ + /// <summary> + /// This is essentially a marker interface + /// </summary> + public interface IHasMediaStreams + { + } +} diff --git a/MediaBrowser.Controller/Entities/IHasScreenshots.cs b/MediaBrowser.Controller/Entities/IHasScreenshots.cs index 341d6403f..2276c707a 100644 --- a/MediaBrowser.Controller/Entities/IHasScreenshots.cs +++ b/MediaBrowser.Controller/Entities/IHasScreenshots.cs @@ -12,5 +12,10 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The screenshot image paths.</value> List<string> ScreenshotImagePaths { get; set; } + + /// <summary> + /// Validates the screenshots. + /// </summary> + void ValidateScreenshots(); } } diff --git a/MediaBrowser.Controller/Entities/Video.cs b/MediaBrowser.Controller/Entities/Video.cs index 9b02571b0..425e418ed 100644 --- a/MediaBrowser.Controller/Entities/Video.cs +++ b/MediaBrowser.Controller/Entities/Video.cs @@ -22,12 +22,29 @@ namespace MediaBrowser.Controller.Entities public Video() { - MediaStreams = new List<MediaStream>(); PlayableStreamFileNames = new List<string>(); AdditionalPartIds = new List<Guid>(); } /// <summary> + /// Gets or sets a value indicating whether this instance has subtitles. + /// </summary> + /// <value><c>true</c> if this instance has subtitles; otherwise, <c>false</c>.</value> + public bool HasSubtitles { get; set; } + + /// <summary> + /// Gets or sets the video bit rate. + /// </summary> + /// <value>The video bit rate.</value> + public int? VideoBitRate { get; set; } + + /// <summary> + /// Gets or sets the default index of the video stream. + /// </summary> + /// <value>The default index of the video stream.</value> + public int? DefaultVideoStreamIndex { get; set; } + + /// <summary> /// Gets or sets the type of the video. /// </summary> /// <value>The type of the video.</value> @@ -46,12 +63,6 @@ namespace MediaBrowser.Controller.Entities public Video3DFormat? Video3DFormat { get; set; } /// <summary> - /// Gets or sets the media streams. - /// </summary> - /// <value>The media streams.</value> - public List<MediaStream> MediaStreams { get; set; } - - /// <summary> /// If the video is a folder-rip, this will hold the file list for the largest playlist /// </summary> public List<string> PlayableStreamFileNames { get; set; } @@ -70,7 +81,7 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The aspect ratio.</value> public string AspectRatio { get; set; } - + /// <summary> /// Should be overridden to return the proper folder where metadata lives /// </summary> @@ -123,16 +134,6 @@ namespace MediaBrowser.Controller.Entities } /// <summary> - /// The default video stream for this video. Use this to determine media info for this item. - /// </summary> - /// <value>The default video stream.</value> - [IgnoreDataMember] - public MediaStream DefaultVideoStream - { - get { return MediaStreams != null ? MediaStreams.FirstOrDefault(s => s.Type == MediaStreamType.Video) : null; } - } - - /// <summary> /// Gets a value indicating whether [is3 D]. /// </summary> /// <value><c>true</c> if [is3 D]; otherwise, <c>false</c>.</value> |
