jellyfin/MediaBrowser.Controller/Entities/IHasMetadata.cs

60 lines
1.9 KiB
C#
Raw Normal View History

2014-02-10 11:39:41 -07:00
using MediaBrowser.Controller.Library;
using MediaBrowser.Model.Entities;
using System;
using System.Collections.Generic;
2014-02-08 13:02:35 -07:00
using System.Threading;
using System.Threading.Tasks;
2014-02-06 20:10:13 -07:00
namespace MediaBrowser.Controller.Entities
{
/// <summary>
/// Interface IHasMetadata
/// </summary>
2014-01-30 14:47:13 -07:00
public interface IHasMetadata : IHasImages
{
/// <summary>
/// Gets the preferred metadata country code.
/// </summary>
/// <returns>System.String.</returns>
string GetPreferredMetadataCountryCode();
/// <summary>
/// Gets the date modified.
/// </summary>
/// <value>The date modified.</value>
DateTime DateModified { get; }
/// <summary>
/// Gets the locked fields.
/// </summary>
/// <value>The locked fields.</value>
List<MetadataFields> LockedFields { get; }
/// <summary>
/// Gets or sets the date last saved.
/// </summary>
/// <value>The date last saved.</value>
DateTime DateLastSaved { get; set; }
2014-02-02 06:36:31 -07:00
/// <summary>
/// Gets a value indicating whether this instance is in mixed folder.
/// </summary>
/// <value><c>true</c> if this instance is in mixed folder; otherwise, <c>false</c>.</value>
bool IsInMixedFolder { get; }
2014-02-08 13:02:35 -07:00
/// <summary>
/// Updates to repository.
/// </summary>
/// <param name="updateReason">The update reason.</param>
/// <param name="cancellationToken">The cancellation token.</param>
/// <returns>Task.</returns>
Task UpdateToRepository(ItemUpdateType updateReason, CancellationToken cancellationToken);
2014-02-10 11:39:41 -07:00
/// <summary>
/// This is called before any metadata refresh and returns ItemUpdateType indictating if changes were made, and what.
/// </summary>
/// <returns>ItemUpdateType.</returns>
ItemUpdateType BeforeMetadataRefresh();
}
}