EpisodeXmlParser.cs 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using System.IO;
  2. using System.Xml;
  3. using MediaBrowser.Controller.Xml;
  4. using MediaBrowser.TV.Entities;
  5. namespace MediaBrowser.TV.Metadata
  6. {
  7. public class EpisodeXmlParser : BaseItemXmlParser<Episode>
  8. {
  9. protected override void FetchDataFromXmlNode(XmlReader reader, Episode item)
  10. {
  11. switch (reader.Name)
  12. {
  13. case "filename":
  14. {
  15. string filename = reader.ReadString();
  16. if (!string.IsNullOrWhiteSpace(filename))
  17. {
  18. string seasonFolder = Path.GetDirectoryName(item.Path);
  19. item.PrimaryImagePath = Path.Combine(seasonFolder, "metadata", filename);
  20. }
  21. break;
  22. }
  23. case "EpisodeNumber":
  24. string number = reader.ReadString();
  25. if (!string.IsNullOrWhiteSpace(number))
  26. {
  27. item.IndexNumber = int.Parse(number);
  28. }
  29. break;
  30. case "EpisodeName":
  31. item.Name = reader.ReadString();
  32. break;
  33. default:
  34. base.FetchDataFromXmlNode(reader, item);
  35. break;
  36. }
  37. }
  38. }
  39. }