diff options
Diffstat (limited to 'MediaBrowser.Providers/TV/EpisodeXmlParser.cs')
| -rw-r--r-- | MediaBrowser.Providers/TV/EpisodeXmlParser.cs | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/MediaBrowser.Providers/TV/EpisodeXmlParser.cs b/MediaBrowser.Providers/TV/EpisodeXmlParser.cs index b35c18e09..ee78c3777 100644 --- a/MediaBrowser.Providers/TV/EpisodeXmlParser.cs +++ b/MediaBrowser.Providers/TV/EpisodeXmlParser.cs @@ -3,6 +3,7 @@ using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Logging; using System; +using System.Collections.Generic; using System.Globalization; using System.IO; using System.Threading; @@ -15,14 +16,18 @@ namespace MediaBrowser.Providers.TV /// </summary> public class EpisodeXmlParser : BaseItemXmlParser<Episode> { + private List<LocalImageInfo> _imagesFound; + public EpisodeXmlParser(ILogger logger) : base(logger) { } - public void FetchAsync(Episode item, string metadataFile, CancellationToken cancellationToken) + public void Fetch(Episode item, List<LocalImageInfo> images, string metadataFile, CancellationToken cancellationToken) { - Fetch(item, metadataFile, cancellationToken); + _imagesFound = images; + + Fetch(item, metadataFile, cancellationToken); } private static readonly CultureInfo UsCulture = new CultureInfo("en-US"); @@ -70,12 +75,17 @@ namespace MediaBrowser.Providers.TV // even though it's actually using the metadata folder. filename = Path.GetFileName(filename); - var seasonFolder = Path.GetDirectoryName(item.Path); - filename = Path.Combine(seasonFolder, "metadata", filename); + var parentFolder = Path.GetDirectoryName(item.Path); + filename = Path.Combine(parentFolder, "metadata", filename); + var file = new FileInfo(filename); - if (File.Exists(filename)) + if (file.Exists) { - item.SetImagePath(ImageType.Primary, 0, filename); + _imagesFound.Add(new LocalImageInfo + { + Type = ImageType.Primary, + FileInfo = file + }); } } break; |
