using System; namespace MediaBrowser.Controller.Providers { /// /// Marker interface /// public interface IMetadataProvider { /// /// Gets the name. /// /// The name. string Name { get; } } public interface IMetadataProvider : IMetadataProvider where TItemType : IHasMetadata { } public interface IHasChangeMonitor { /// /// Determines whether the specified item has changed. /// /// The item. /// The date. /// true if the specified item has changed; otherwise, false. bool HasChanged(IHasMetadata item, DateTime date); } public interface IHasOrder { int Order { get; } } public class MetadataResult where T : IHasMetadata { public bool HasMetadata { get; set; } public T Item { get; set; } } }