using MediaBrowser.Common.Extensions;
using MediaBrowser.Common.Logging;
using MediaBrowser.Model.Tasks;
using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.Serialization;
using System.Threading;
using System.Threading.Tasks;
namespace MediaBrowser.Controller.Entities
{
///
/// Specialized Folder class that points to a subset of the physical folders in the system.
/// It is created from the user-specific folders within the system root
///
public class CollectionFolder : Folder, ICollectionFolder
{
///
/// Gets a value indicating whether this instance is virtual folder.
///
/// true if this instance is virtual folder; otherwise, false.
[IgnoreDataMember]
public override bool IsVirtualFolder
{
get
{
return true;
}
}
///
/// Allow different display preferences for each collection folder
///
/// The display prefs id.
public override Guid DisplayPrefsId
{
get
{
return Id;
}
}
// Cache this since it will be used a lot
///
/// The null task result
///
private static readonly Task NullTaskResult = Task.FromResult