BaseMetadataProvider.cs 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. using MediaBrowser.Controller.Entities;
  2. using MediaBrowser.Controller.Library;
  3. using System.Threading.Tasks;
  4. namespace MediaBrowser.Controller.Providers
  5. {
  6. public abstract class BaseMetadataProvider
  7. {
  8. public abstract bool Supports(BaseEntity item);
  9. public virtual bool RequiresInternet
  10. {
  11. get
  12. {
  13. return false;
  14. }
  15. }
  16. public abstract Task FetchAsync(BaseEntity item, ItemResolveEventArgs args);
  17. public abstract MetadataProviderPriority Priority { get; }
  18. }
  19. /// <summary>
  20. /// Determines when a provider should execute, relative to others
  21. /// </summary>
  22. public enum MetadataProviderPriority
  23. {
  24. // Run this provider at the beginning
  25. First = 1,
  26. // Run this provider after all first priority providers
  27. Second = 2,
  28. // Run this provider after all second priority providers
  29. Third = 3,
  30. // Run this provider last
  31. Last = 4
  32. }
  33. }