diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-09-28 11:27:26 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-09-28 11:27:26 -0400 |
| commit | 3be25f8bfbe6286d47ab5cf400fac7673e284d61 (patch) | |
| tree | f4b61c5d1082f673ebe00e117502091e41a88bd3 /MediaBrowser.Controller | |
| parent | eab030df7ff0f3a78b1aa01f06eb30f71df5a391 (diff) | |
channel improvements
Diffstat (limited to 'MediaBrowser.Controller')
12 files changed, 75 insertions, 13 deletions
diff --git a/MediaBrowser.Controller/Channels/Channel.cs b/MediaBrowser.Controller/Channels/Channel.cs index 602918b19..d52ad99bc 100644 --- a/MediaBrowser.Controller/Channels/Channel.cs +++ b/MediaBrowser.Controller/Channels/Channel.cs @@ -47,5 +47,10 @@ namespace MediaBrowser.Controller.Channels }; } } + + protected override string GetInternalMetadataPath(string basePath) + { + return System.IO.Path.Combine(basePath, "channels", Id.ToString("N"), "metadata"); + } } } diff --git a/MediaBrowser.Controller/Channels/ChannelAudioItem.cs b/MediaBrowser.Controller/Channels/ChannelAudioItem.cs index 8afaa73ac..6d505aecb 100644 --- a/MediaBrowser.Controller/Channels/ChannelAudioItem.cs +++ b/MediaBrowser.Controller/Channels/ChannelAudioItem.cs @@ -12,6 +12,7 @@ namespace MediaBrowser.Controller.Channels public string ExternalId { get; set; } public string ChannelId { get; set; } + public string DataVersion { get; set; } public ChannelItemType ChannelItemType { get; set; } @@ -41,6 +42,11 @@ namespace MediaBrowser.Controller.Channels } } + public override bool IsSaveLocalMetadataEnabled() + { + return false; + } + public ChannelAudioItem() { ChannelMediaSources = new List<ChannelMediaInfo>(); @@ -58,5 +64,10 @@ namespace MediaBrowser.Controller.Channels return base.LocationType; } } + + protected override string GetInternalMetadataPath(string basePath) + { + return System.IO.Path.Combine(basePath, "channels", ChannelId, Id.ToString("N")); + } } } diff --git a/MediaBrowser.Controller/Channels/ChannelFolderItem.cs b/MediaBrowser.Controller/Channels/ChannelFolderItem.cs index a7cc80104..db54a0c4a 100644 --- a/MediaBrowser.Controller/Channels/ChannelFolderItem.cs +++ b/MediaBrowser.Controller/Channels/ChannelFolderItem.cs @@ -12,6 +12,7 @@ namespace MediaBrowser.Controller.Channels public string ExternalId { get; set; } public string ChannelId { get; set; } + public string DataVersion { get; set; } public ChannelItemType ChannelItemType { get; set; } public ChannelFolderType ChannelFolderType { get; set; } @@ -32,6 +33,11 @@ namespace MediaBrowser.Controller.Channels } } + public override bool IsSaveLocalMetadataEnabled() + { + return false; + } + public override string GetUserDataKey() { return ExternalId; @@ -63,5 +69,10 @@ namespace MediaBrowser.Controller.Channels }; } } + + protected override string GetInternalMetadataPath(string basePath) + { + return System.IO.Path.Combine(basePath, "channels", ChannelId, Id.ToString("N")); + } } } diff --git a/MediaBrowser.Controller/Channels/ChannelItemInfo.cs b/MediaBrowser.Controller/Channels/ChannelItemInfo.cs index 3c7df91c1..a0fbd9245 100644 --- a/MediaBrowser.Controller/Channels/ChannelItemInfo.cs +++ b/MediaBrowser.Controller/Channels/ChannelItemInfo.cs @@ -36,6 +36,8 @@ namespace MediaBrowser.Controller.Channels public ChannelFolderType FolderType { get; set; } public ChannelMediaContentType ContentType { get; set; } + public ExtraType ExtraType { get; set; } + public TrailerType TrailerType { get; set; } public Dictionary<string, string> ProviderIds { get; set; } diff --git a/MediaBrowser.Controller/Channels/ChannelVideoItem.cs b/MediaBrowser.Controller/Channels/ChannelVideoItem.cs index 5d133c983..1ee0bbe4a 100644 --- a/MediaBrowser.Controller/Channels/ChannelVideoItem.cs +++ b/MediaBrowser.Controller/Channels/ChannelVideoItem.cs @@ -15,6 +15,7 @@ namespace MediaBrowser.Controller.Channels public string ExternalId { get; set; } public string ChannelId { get; set; } + public string DataVersion { get; set; } public ChannelItemType ChannelItemType { get; set; } @@ -28,13 +29,13 @@ namespace MediaBrowser.Controller.Channels public override string GetUserDataKey() { - if (ContentType == ChannelMediaContentType.Trailer) + if (ContentType == ChannelMediaContentType.MovieExtra) { var key = this.GetProviderId(MetadataProviders.Tmdb) ?? this.GetProviderId(MetadataProviders.Tvdb) ?? this.GetProviderId(MetadataProviders.Imdb) ?? this.GetProviderId(MetadataProviders.Tvcom); if (!string.IsNullOrWhiteSpace(key)) { - key = key + "-trailer"; + key = key + "-" + ExtraType.ToString().ToLower(); // Make sure different trailers have their own data. if (RunTimeTicks.HasValue) @@ -62,6 +63,11 @@ namespace MediaBrowser.Controller.Channels } } + public override bool IsSaveLocalMetadataEnabled() + { + return false; + } + public ChannelVideoItem() { ChannelMediaSources = new List<ChannelMediaInfo>(); @@ -94,8 +100,14 @@ namespace MediaBrowser.Controller.Channels var info = GetItemLookupInfo<ChannelItemLookupInfo>(); info.ContentType = ContentType; + info.ExtraType = ExtraType; return info; } + + protected override string GetInternalMetadataPath(string basePath) + { + return System.IO.Path.Combine(basePath, "channels", ChannelId, Id.ToString("N")); + } } } diff --git a/MediaBrowser.Controller/Channels/IChannelItem.cs b/MediaBrowser.Controller/Channels/IChannelItem.cs index 8b9770113..7eb865b5b 100644 --- a/MediaBrowser.Controller/Channels/IChannelItem.cs +++ b/MediaBrowser.Controller/Channels/IChannelItem.cs @@ -11,5 +11,7 @@ namespace MediaBrowser.Controller.Channels ChannelItemType ChannelItemType { get; set; } string OriginalImageUrl { get; set; } + + string DataVersion { get; set; } } } diff --git a/MediaBrowser.Controller/Channels/IChannelMediaItem.cs b/MediaBrowser.Controller/Channels/IChannelMediaItem.cs index e39d98e13..50df07e72 100644 --- a/MediaBrowser.Controller/Channels/IChannelMediaItem.cs +++ b/MediaBrowser.Controller/Channels/IChannelMediaItem.cs @@ -1,5 +1,6 @@ -using System.Collections.Generic; -using MediaBrowser.Model.Channels; +using MediaBrowser.Model.Channels; +using MediaBrowser.Model.Entities; +using System.Collections.Generic; namespace MediaBrowser.Controller.Channels { @@ -10,6 +11,8 @@ namespace MediaBrowser.Controller.Channels ChannelMediaContentType ContentType { get; set; } + ExtraType ExtraType { get; set; } + List<ChannelMediaInfo> ChannelMediaSources { get; set; } } }
\ No newline at end of file diff --git a/MediaBrowser.Controller/Channels/InternalChannelFeatures.cs b/MediaBrowser.Controller/Channels/InternalChannelFeatures.cs index 814c56577..bcc679159 100644 --- a/MediaBrowser.Controller/Channels/InternalChannelFeatures.cs +++ b/MediaBrowser.Controller/Channels/InternalChannelFeatures.cs @@ -32,6 +32,11 @@ namespace MediaBrowser.Controller.Channels /// Indicates if a sort ascending/descending toggle is supported or not. /// </summary> public bool SupportsSortOrderToggle { get; set; } + /// <summary> + /// Gets or sets the automatic refresh levels. + /// </summary> + /// <value>The automatic refresh levels.</value> + public int? AutoRefreshLevels { get; set; } public InternalChannelFeatures() { diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs index 0d13fd943..4a4ff17a0 100644 --- a/MediaBrowser.Controller/Entities/BaseItem.cs +++ b/MediaBrowser.Controller/Entities/BaseItem.cs @@ -351,6 +351,18 @@ namespace MediaBrowser.Controller.Entities } } + public string GetInternalMetadataPath() + { + return GetInternalMetadataPath(ConfigurationManager.ApplicationPaths.InternalMetadataPath); + } + + protected virtual string GetInternalMetadataPath(string basePath) + { + var idString = Id.ToString("N"); + + return System.IO.Path.Combine(basePath, idString.Substring(0, 2), idString); + } + /// <summary> /// Creates the name of the sort. /// </summary> diff --git a/MediaBrowser.Controller/Entities/IHasImages.cs b/MediaBrowser.Controller/Entities/IHasImages.cs index 67acc1cae..66d3fbb2e 100644 --- a/MediaBrowser.Controller/Entities/IHasImages.cs +++ b/MediaBrowser.Controller/Entities/IHasImages.cs @@ -160,6 +160,12 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value><c>true</c> if [supports remote image downloading]; otherwise, <c>false</c>.</value> bool SupportsRemoteImageDownloading { get; } + + /// <summary> + /// Gets the internal metadata path. + /// </summary> + /// <returns>System.String.</returns> + string GetInternalMetadataPath(); } public static class HasImagesExtensions diff --git a/MediaBrowser.Controller/IServerApplicationPaths.cs b/MediaBrowser.Controller/IServerApplicationPaths.cs index 05f681597..34137088f 100644 --- a/MediaBrowser.Controller/IServerApplicationPaths.cs +++ b/MediaBrowser.Controller/IServerApplicationPaths.cs @@ -1,5 +1,4 @@ -using System; -using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Configuration; namespace MediaBrowser.Controller { @@ -106,12 +105,5 @@ namespace MediaBrowser.Controller /// </summary> /// <value>The internal metadata path.</value> string InternalMetadataPath { get; } - - /// <summary> - /// Gets the internal metadata path. - /// </summary> - /// <param name="id">The identifier.</param> - /// <returns>System.String.</returns> - string GetInternalMetadataPath(Guid id); } }
\ No newline at end of file diff --git a/MediaBrowser.Controller/Providers/ItemLookupInfo.cs b/MediaBrowser.Controller/Providers/ItemLookupInfo.cs index 56f285e4d..43b921092 100644 --- a/MediaBrowser.Controller/Providers/ItemLookupInfo.cs +++ b/MediaBrowser.Controller/Providers/ItemLookupInfo.cs @@ -241,5 +241,6 @@ namespace MediaBrowser.Controller.Providers public class ChannelItemLookupInfo : ItemLookupInfo { public ChannelMediaContentType ContentType { get; set; } + public ExtraType ExtraType { get; set; } } } |
