IMetadataProvider.cs 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. using System;
  2. namespace MediaBrowser.Controller.Providers
  3. {
  4. /// <summary>
  5. /// Marker interface
  6. /// </summary>
  7. public interface IMetadataProvider
  8. {
  9. /// <summary>
  10. /// Gets the name.
  11. /// </summary>
  12. /// <value>The name.</value>
  13. string Name { get; }
  14. }
  15. public interface IMetadataProvider<TItemType> : IMetadataProvider
  16. where TItemType : IHasMetadata
  17. {
  18. }
  19. public interface IHasChangeMonitor
  20. {
  21. /// <summary>
  22. /// Determines whether the specified item has changed.
  23. /// </summary>
  24. /// <param name="item">The item.</param>
  25. /// <param name="date">The date.</param>
  26. /// <returns><c>true</c> if the specified item has changed; otherwise, <c>false</c>.</returns>
  27. bool HasChanged(IHasMetadata item, DateTime date);
  28. }
  29. public interface IHasOrder
  30. {
  31. int Order { get; }
  32. }
  33. public class MetadataResult<T>
  34. where T : IHasMetadata
  35. {
  36. public bool HasMetadata { get; set; }
  37. public T Item { get; set; }
  38. }
  39. }