using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Model.Entities; using System.Collections.Generic; using System.IO; using System.Threading; using System.Threading.Tasks; namespace MediaBrowser.Controller.Providers { /// /// Interface IProviderManager /// public interface IProviderManager { /// /// Executes the metadata providers. /// /// The item. /// The cancellation token. /// if set to true [force]. /// if set to true [allow slow providers]. /// Task{System.Boolean}. Task ExecuteMetadataProviders(BaseItem item, CancellationToken cancellationToken, bool force = false, bool allowSlowProviders = true); /// /// Saves the image. /// /// The item. /// The URL. /// The resource pool. /// The type. /// Index of the image. /// The cancellation token. /// Task. Task SaveImage(BaseItem item, string url, SemaphoreSlim resourcePool, ImageType type, int? imageIndex, CancellationToken cancellationToken); /// /// Saves the image. /// /// The item. /// The source. /// Type of the MIME. /// The type. /// Index of the image. /// The cancellation token. /// Task. Task SaveImage(BaseItem item, Stream source, string mimeType, ImageType type, int? imageIndex, CancellationToken cancellationToken); /// /// Adds the metadata providers. /// /// The providers. void AddParts(IEnumerable providers); } }