2012-09-11 03:34:02 +02:00
|
|
|
|
using MediaBrowser.Controller.Entities;
|
2012-08-23 22:51:10 +02:00
|
|
|
|
using MediaBrowser.Controller.Library;
|
2012-09-11 03:34:02 +02:00
|
|
|
|
using System.ComponentModel.Composition;
|
2012-07-12 08:55:27 +02:00
|
|
|
|
|
|
|
|
|
namespace MediaBrowser.Controller.Resolvers
|
|
|
|
|
{
|
2012-07-26 04:33:11 +02:00
|
|
|
|
[Export(typeof(IBaseItemResolver))]
|
2012-07-12 08:55:27 +02:00
|
|
|
|
public class FolderResolver : BaseFolderResolver<Folder>
|
|
|
|
|
{
|
2012-08-20 17:55:05 +02:00
|
|
|
|
public override ResolverPriority Priority
|
|
|
|
|
{
|
|
|
|
|
get { return ResolverPriority.Last; }
|
|
|
|
|
}
|
|
|
|
|
|
2012-07-12 08:55:27 +02:00
|
|
|
|
protected override Folder Resolve(ItemResolveEventArgs args)
|
|
|
|
|
{
|
2012-09-19 16:22:53 +02:00
|
|
|
|
if (args.IsDirectory)
|
2012-07-12 08:55:27 +02:00
|
|
|
|
{
|
2012-09-20 19:52:56 +02:00
|
|
|
|
return new Folder();
|
2012-07-12 08:55:27 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2012-08-18 21:38:27 +02:00
|
|
|
|
public abstract class BaseFolderResolver<TItemType> : BaseItemResolver<TItemType>
|
|
|
|
|
where TItemType : Folder, new()
|
2012-07-12 08:55:27 +02:00
|
|
|
|
{
|
2012-08-19 22:38:31 +02:00
|
|
|
|
protected override void SetInitialItemValues(TItemType item, ItemResolveEventArgs args)
|
2012-07-12 08:55:27 +02:00
|
|
|
|
{
|
2012-08-19 22:38:31 +02:00
|
|
|
|
base.SetInitialItemValues(item, args);
|
2012-07-12 08:55:27 +02:00
|
|
|
|
|
|
|
|
|
item.IsRoot = args.Parent == null;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|