jellyfin/MediaBrowser.Controller/Entities/UserRootFolder.cs

37 lines
1.2 KiB
C#
Raw Normal View History

2014-02-13 05:11:54 +00:00
using MediaBrowser.Controller.Providers;
2014-03-06 05:17:13 +00:00
using System;
2014-02-10 20:11:46 +00:00
using System.Collections.Generic;
using System.Linq;
2013-02-21 01:33:05 +00:00
namespace MediaBrowser.Controller.Entities
{
/// <summary>
/// Special class used for User Roots. Children contain actual ones defined for this user
/// PLUS the virtual folders from the physical root (added by plug-ins).
/// </summary>
public class UserRootFolder : Folder
{
/// <summary>
/// Get the children of this folder from the actual file system
/// </summary>
/// <returns>IEnumerable{BaseItem}.</returns>
2014-02-10 18:39:41 +00:00
protected override IEnumerable<BaseItem> GetNonCachedChildren(IDirectoryService directoryService)
2013-02-21 01:33:05 +00:00
{
2014-02-08 22:38:02 +00:00
return base.GetNonCachedChildren(directoryService).Concat(LibraryManager.RootFolder.VirtualChildren);
2013-02-21 01:33:05 +00:00
}
2014-02-10 20:11:46 +00:00
2014-02-13 05:11:54 +00:00
public override bool BeforeMetadataRefresh()
2014-02-10 20:11:46 +00:00
{
2014-02-13 05:11:54 +00:00
var hasChanges = base.BeforeMetadataRefresh();
2014-02-10 20:11:46 +00:00
2014-03-06 05:17:13 +00:00
if (string.Equals("default", Name, StringComparison.OrdinalIgnoreCase))
2014-02-10 20:11:46 +00:00
{
2014-02-21 05:04:11 +00:00
Name = "Media Folders";
2014-02-13 05:11:54 +00:00
hasChanges = true;
2014-02-10 20:11:46 +00:00
}
2014-02-13 05:11:54 +00:00
return hasChanges;
2014-02-10 20:11:46 +00:00
}
2013-02-21 01:33:05 +00:00
}
}