jellyfin/MediaBrowser.Controller/Library/IMetadataSaver.cs
2014-02-06 22:10:13 -05:00

45 lines
1.4 KiB
C#

using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Providers;
using System.Threading;
namespace MediaBrowser.Controller.Library
{
/// <summary>
/// Interface IMetadataSaver
/// </summary>
public interface IMetadataSaver
{
/// <summary>
/// Gets the name.
/// </summary>
/// <value>The name.</value>
string Name { get; }
/// <summary>
/// Determines whether [is enabled for] [the specified item].
/// </summary>
/// <param name="item">The item.</param>
/// <param name="updateType">Type of the update.</param>
/// <returns><c>true</c> if [is enabled for] [the specified item]; otherwise, <c>false</c>.</returns>
bool IsEnabledFor(IHasMetadata item, ItemUpdateType updateType);
/// <summary>
/// Saves the specified item.
/// </summary>
/// <param name="item">The item.</param>
/// <param name="cancellationToken">The cancellation token.</param>
/// <returns>Task.</returns>
void Save(IHasMetadata item, CancellationToken cancellationToken);
}
public interface IMetadataFileSaver : IMetadataSaver
{
/// <summary>
/// Gets the save path.
/// </summary>
/// <param name="item">The item.</param>
/// <returns>System.String.</returns>
string GetSavePath(IHasMetadata item);
}
}