diff options
Diffstat (limited to 'MediaBrowser.LocalMetadata/Parsers/MovieXmlParser.cs')
| -rw-r--r-- | MediaBrowser.LocalMetadata/Parsers/MovieXmlParser.cs | 52 |
1 files changed, 25 insertions, 27 deletions
diff --git a/MediaBrowser.LocalMetadata/Parsers/MovieXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/MovieXmlParser.cs index 388a0d20d..0b434231f 100644 --- a/MediaBrowser.LocalMetadata/Parsers/MovieXmlParser.cs +++ b/MediaBrowser.LocalMetadata/Parsers/MovieXmlParser.cs @@ -1,43 +1,31 @@ -using System.Collections.Generic; -using System.Threading; -using System.Xml; -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; using MediaBrowser.Model.Logging; +using System.Xml; namespace MediaBrowser.LocalMetadata.Parsers { /// <summary> /// Class EpisodeXmlParser /// </summary> - public class MovieXmlParser : BaseItemXmlParser<Video> + public class BaseVideoXmlParser<T> : BaseItemXmlParser<T> + where T : Video { - private List<ChapterInfo> _chaptersFound; - - public MovieXmlParser(ILogger logger) + public BaseVideoXmlParser(ILogger logger) : base(logger) { } - public void Fetch(Video item, - List<ChapterInfo> chapters, - string metadataFile, - CancellationToken cancellationToken) - { - _chaptersFound = chapters; - - Fetch(item, metadataFile, cancellationToken); - } - /// <summary> /// Fetches the data from XML node. /// </summary> /// <param name="reader">The reader.</param> - /// <param name="item">The item.</param> - protected override void FetchDataFromXmlNode(XmlReader reader, Video item) + /// <param name="result">The result.</param> + protected override void FetchDataFromXmlNode(XmlReader reader, MetadataResult<T> result) { + var item = result.Item; + switch (reader.Name) { case "TmdbCollectionName": @@ -53,15 +41,25 @@ namespace MediaBrowser.LocalMetadata.Parsers break; } - case "Chapters": - - _chaptersFound.AddRange(FetchChaptersFromXmlNode(item, reader.ReadSubtree())); - break; - default: - base.FetchDataFromXmlNode(reader, item); + base.FetchDataFromXmlNode(reader, result); break; } } } + + public class MovieXmlParser : BaseVideoXmlParser<Movie> + { + public MovieXmlParser(ILogger logger) : base(logger) + { + } + } + + public class VideoXmlParser : BaseVideoXmlParser<Video> + { + public VideoXmlParser(ILogger logger) + : base(logger) + { + } + } } |
