aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Resolvers
diff options
context:
space:
mode:
authorLukePulverenti Luke Pulverenti luke pulverenti <LukePulverenti Luke Pulverenti luke.pulverenti@gmail.com>2012-08-19 16:38:47 -0400
committerLukePulverenti Luke Pulverenti luke pulverenti <LukePulverenti Luke Pulverenti luke.pulverenti@gmail.com>2012-08-19 16:38:47 -0400
commit5b7063e7c612f9447372f52ea337f37c0f0fb11d (patch)
tree0d5a0d04cc4572d1ad63611b76ff81860573d61b /MediaBrowser.Controller/Resolvers
parenta129c93c42ee02aa7ecdb9227552d18eac034b98 (diff)
parent937d27ae9d6aa571ab9327f138bfba1b84c158db (diff)
Merge
Diffstat (limited to 'MediaBrowser.Controller/Resolvers')
-rw-r--r--MediaBrowser.Controller/Resolvers/BaseItemResolver.cs24
-rw-r--r--MediaBrowser.Controller/Resolvers/FolderResolver.cs4
-rw-r--r--MediaBrowser.Controller/Resolvers/VirtualFolderResolver.cs4
3 files changed, 10 insertions, 22 deletions
diff --git a/MediaBrowser.Controller/Resolvers/BaseItemResolver.cs b/MediaBrowser.Controller/Resolvers/BaseItemResolver.cs
index 75e516487..d8f6b61ce 100644
--- a/MediaBrowser.Controller/Resolvers/BaseItemResolver.cs
+++ b/MediaBrowser.Controller/Resolvers/BaseItemResolver.cs
@@ -2,13 +2,12 @@
using System.IO;
using System.Threading.Tasks;
using MediaBrowser.Controller.Events;
-using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Entities;
namespace MediaBrowser.Controller.Resolvers
{
public abstract class BaseItemResolver<T> : IBaseItemResolver
- where T : BaseItem, new ()
+ where T : BaseItem, new()
{
protected virtual T Resolve(ItemResolveEventArgs args)
{
@@ -18,7 +17,7 @@ namespace MediaBrowser.Controller.Resolvers
/// <summary>
/// Sets initial values on the newly resolved item
/// </summary>
- protected virtual void SetItemValues(T item, ItemResolveEventArgs args)
+ protected virtual void SetInitialItemValues(T item, ItemResolveEventArgs args)
{
// If the subclass didn't specify this
if (string.IsNullOrEmpty(item.Path))
@@ -38,35 +37,24 @@ namespace MediaBrowser.Controller.Resolvers
public async Task<BaseItem> ResolvePath(ItemResolveEventArgs args)
{
T item = Resolve(args);
-
+
if (item != null)
{
// Set initial values on the newly resolved item
- SetItemValues(item, args);
+ SetInitialItemValues(item, args);
// Make sure the item has a name
EnsureName(item);
// Make sure DateCreated and DateModified have values
EnsureDates(item);
-
- await FetchMetadataFromProviders(item, args);
+
+ await Kernel.Instance.ExecuteMetadataProviders(item, args);
}
return item;
}
- private async Task FetchMetadataFromProviders(T item, ItemResolveEventArgs args)
- {
- foreach (BaseMetadataProvider provider in Kernel.Instance.MetadataProviders)
- {
- if (provider.Supports(item))
- {
- await provider.Fetch(item, args);
- }
- }
- }
-
private void EnsureName(T item)
{
// If the subclass didn't supply a name, add it here
diff --git a/MediaBrowser.Controller/Resolvers/FolderResolver.cs b/MediaBrowser.Controller/Resolvers/FolderResolver.cs
index ff326669f..858b3bcd8 100644
--- a/MediaBrowser.Controller/Resolvers/FolderResolver.cs
+++ b/MediaBrowser.Controller/Resolvers/FolderResolver.cs
@@ -21,9 +21,9 @@ namespace MediaBrowser.Controller.Resolvers
public abstract class BaseFolderResolver<TItemType> : BaseItemResolver<TItemType>
where TItemType : Folder, new()
{
- protected override void SetItemValues(TItemType item, ItemResolveEventArgs args)
+ protected override void SetInitialItemValues(TItemType item, ItemResolveEventArgs args)
{
- base.SetItemValues(item, args);
+ base.SetInitialItemValues(item, args);
item.IsRoot = args.Parent == null;
}
diff --git a/MediaBrowser.Controller/Resolvers/VirtualFolderResolver.cs b/MediaBrowser.Controller/Resolvers/VirtualFolderResolver.cs
index 51478fd02..c81cb204a 100644
--- a/MediaBrowser.Controller/Resolvers/VirtualFolderResolver.cs
+++ b/MediaBrowser.Controller/Resolvers/VirtualFolderResolver.cs
@@ -18,7 +18,7 @@ namespace MediaBrowser.Controller.Resolvers
return null;
}
- protected override void SetItemValues(VirtualFolder item, ItemResolveEventArgs args)
+ protected override void SetInitialItemValues(VirtualFolder item, ItemResolveEventArgs args)
{
// Set the name initially by stripping off the [CollectionType=...]
// The name can always be overridden later by folder.xml
@@ -34,7 +34,7 @@ namespace MediaBrowser.Controller.Resolvers
item.CollectionType = pathName.Substring(index + srch.Length).TrimEnd(']');
}
- base.SetItemValues(item, args);
+ base.SetInitialItemValues(item, args);
}
}