SeriesProviderFromXml.cs 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. using MediaBrowser.Controller.Library;
  2. using MediaBrowser.Model.Entities;
  3. using MediaBrowser.Model.Entities.TV;
  4. using System.ComponentModel.Composition;
  5. using System.IO;
  6. using System.Threading.Tasks;
  7. namespace MediaBrowser.Controller.Providers.TV
  8. {
  9. [Export(typeof(BaseMetadataProvider))]
  10. public class SeriesProviderFromXml : BaseMetadataProvider
  11. {
  12. public override bool Supports(BaseEntity item)
  13. {
  14. return item is Series;
  15. }
  16. public override MetadataProviderPriority Priority
  17. {
  18. get { return MetadataProviderPriority.First; }
  19. }
  20. public override async Task FetchAsync(BaseEntity item, ItemResolveEventArgs args)
  21. {
  22. await Task.Run(() => { Fetch(item, args); }).ConfigureAwait(false);
  23. }
  24. private void Fetch(BaseEntity item, ItemResolveEventArgs args)
  25. {
  26. if (args.ContainsFile("series.xml"))
  27. {
  28. new SeriesXmlParser().Fetch(item as Series, Path.Combine(args.Path, "series.xml"));
  29. }
  30. }
  31. }
  32. }