2019-01-13 13:02:23 -07:00
|
|
|
using System.Collections.Generic;
|
2019-01-13 12:25:45 -07:00
|
|
|
using MediaBrowser.Controller.Entities;
|
2014-02-08 13:02:35 -07:00
|
|
|
using MediaBrowser.Controller.Providers;
|
2016-10-25 12:02:04 -07:00
|
|
|
using MediaBrowser.Model.IO;
|
2014-02-08 13:02:35 -07:00
|
|
|
|
2014-06-29 20:04:50 -07:00
|
|
|
namespace MediaBrowser.LocalMetadata.Images
|
2014-02-08 13:02:35 -07:00
|
|
|
{
|
2020-06-13 19:04:53 -07:00
|
|
|
/// <summary>
|
|
|
|
/// Collection folder local image provider.
|
|
|
|
/// </summary>
|
2020-03-09 08:10:02 -07:00
|
|
|
public class CollectionFolderLocalImageProvider : ILocalImageProvider, IHasOrder
|
2014-02-08 13:02:35 -07:00
|
|
|
{
|
2014-07-26 10:30:15 -07:00
|
|
|
private readonly IFileSystem _fileSystem;
|
|
|
|
|
2020-06-13 19:04:53 -07:00
|
|
|
/// <summary>
|
|
|
|
/// Initializes a new instance of the <see cref="CollectionFolderLocalImageProvider"/> class.
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="fileSystem">Instance of the <see cref="IFileSystem"/> interface.</param>
|
2014-07-26 10:30:15 -07:00
|
|
|
public CollectionFolderLocalImageProvider(IFileSystem fileSystem)
|
|
|
|
{
|
|
|
|
_fileSystem = fileSystem;
|
|
|
|
}
|
|
|
|
|
2020-06-13 19:04:53 -07:00
|
|
|
/// <inheritdoc />
|
2019-01-13 13:31:14 -07:00
|
|
|
public string Name => "Collection Folder Images";
|
2014-02-08 13:02:35 -07:00
|
|
|
|
2020-06-13 19:04:53 -07:00
|
|
|
/// Run after LocalImageProvider
|
|
|
|
/// <inheritdoc />
|
|
|
|
public int Order => 1;
|
|
|
|
|
|
|
|
/// <inheritdoc />
|
2018-09-12 10:26:21 -07:00
|
|
|
public bool Supports(BaseItem item)
|
2014-02-08 13:02:35 -07:00
|
|
|
{
|
2014-02-10 13:11:46 -07:00
|
|
|
return item is CollectionFolder && item.SupportsLocalMetadata;
|
2014-02-08 13:02:35 -07:00
|
|
|
}
|
|
|
|
|
2020-06-13 19:04:53 -07:00
|
|
|
/// <inheritdoc />
|
2021-03-08 21:57:38 -07:00
|
|
|
public IEnumerable<LocalImageInfo> GetImages(BaseItem item, IDirectoryService directoryService)
|
2014-02-08 13:02:35 -07:00
|
|
|
{
|
|
|
|
var collectionFolder = (CollectionFolder)item;
|
|
|
|
|
2020-06-13 19:04:53 -07:00
|
|
|
return new LocalImageProvider(_fileSystem).GetImages(item, collectionFolder.PhysicalLocations, directoryService);
|
2014-02-08 13:02:35 -07:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|