diff options
| author | LukePulverenti <luke.pulverenti@gmail.com> | 2013-03-08 00:08:27 -0500 |
|---|---|---|
| committer | LukePulverenti <luke.pulverenti@gmail.com> | 2013-03-08 00:08:27 -0500 |
| commit | 9911df11e8a96d5d7fffcd8618b63a6adb27701f (patch) | |
| tree | b7e446296c6b0f61804430cd59beda68aa549065 /MediaBrowser.Controller/Providers/IProviderManager.cs | |
| parent | 211d24e66e717f6294840b4f91806a24c1fb2e78 (diff) | |
extracted provider manager. took more off the kernel
Diffstat (limited to 'MediaBrowser.Controller/Providers/IProviderManager.cs')
| -rw-r--r-- | MediaBrowser.Controller/Providers/IProviderManager.cs | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/Providers/IProviderManager.cs b/MediaBrowser.Controller/Providers/IProviderManager.cs new file mode 100644 index 000000000..902ed21bc --- /dev/null +++ b/MediaBrowser.Controller/Providers/IProviderManager.cs @@ -0,0 +1,51 @@ +using System.Collections.Generic; +using MediaBrowser.Controller.Entities; +using System; +using System.IO; +using System.Threading; +using System.Threading.Tasks; + +namespace MediaBrowser.Controller.Providers +{ + public interface IProviderManager : IDisposable + { + /// <summary> + /// Downloads the and save image. + /// </summary> + /// <param name="item">The item.</param> + /// <param name="source">The source.</param> + /// <param name="targetName">Name of the target.</param> + /// <param name="resourcePool">The resource pool.</param> + /// <param name="cancellationToken">The cancellation token.</param> + /// <returns>Task{System.String}.</returns> + /// <exception cref="System.ArgumentNullException">item</exception> + Task<string> DownloadAndSaveImage(BaseItem item, string source, string targetName, SemaphoreSlim resourcePool, CancellationToken cancellationToken); + + /// <summary> + /// Saves to library filesystem. + /// </summary> + /// <param name="item">The item.</param> + /// <param name="path">The path.</param> + /// <param name="dataToSave">The data to save.</param> + /// <param name="cancellationToken">The cancellation token.</param> + /// <returns>Task.</returns> + /// <exception cref="System.ArgumentNullException"></exception> + Task SaveToLibraryFilesystem(BaseItem item, string path, Stream dataToSave, CancellationToken cancellationToken); + + /// <summary> + /// Executes the metadata providers. + /// </summary> + /// <param name="item">The item.</param> + /// <param name="cancellationToken">The cancellation token.</param> + /// <param name="force">if set to <c>true</c> [force].</param> + /// <param name="allowSlowProviders">if set to <c>true</c> [allow slow providers].</param> + /// <returns>Task{System.Boolean}.</returns> + Task<bool> ExecuteMetadataProviders(BaseItem item, CancellationToken cancellationToken, bool force = false, bool allowSlowProviders = true); + + /// <summary> + /// Adds the metadata providers. + /// </summary> + /// <param name="providers">The providers.</param> + void AddMetadataProviders(IEnumerable<BaseMetadataProvider> providers); + } +}
\ No newline at end of file |
