aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-09-28 11:27:26 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-09-28 11:27:26 -0400
commit3be25f8bfbe6286d47ab5cf400fac7673e284d61 (patch)
treef4b61c5d1082f673ebe00e117502091e41a88bd3 /MediaBrowser.Controller
parenteab030df7ff0f3a78b1aa01f06eb30f71df5a391 (diff)
channel improvements
Diffstat (limited to 'MediaBrowser.Controller')
-rw-r--r--MediaBrowser.Controller/Channels/Channel.cs5
-rw-r--r--MediaBrowser.Controller/Channels/ChannelAudioItem.cs11
-rw-r--r--MediaBrowser.Controller/Channels/ChannelFolderItem.cs11
-rw-r--r--MediaBrowser.Controller/Channels/ChannelItemInfo.cs2
-rw-r--r--MediaBrowser.Controller/Channels/ChannelVideoItem.cs16
-rw-r--r--MediaBrowser.Controller/Channels/IChannelItem.cs2
-rw-r--r--MediaBrowser.Controller/Channels/IChannelMediaItem.cs7
-rw-r--r--MediaBrowser.Controller/Channels/InternalChannelFeatures.cs5
-rw-r--r--MediaBrowser.Controller/Entities/BaseItem.cs12
-rw-r--r--MediaBrowser.Controller/Entities/IHasImages.cs6
-rw-r--r--MediaBrowser.Controller/IServerApplicationPaths.cs10
-rw-r--r--MediaBrowser.Controller/Providers/ItemLookupInfo.cs1
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; }
}
}