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