aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.LocalMetadata/Parsers
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.LocalMetadata/Parsers')
-rw-r--r--MediaBrowser.LocalMetadata/Parsers/BoxSetXmlParser.cs6
-rw-r--r--MediaBrowser.LocalMetadata/Parsers/EpisodeXmlParser.cs30
-rw-r--r--MediaBrowser.LocalMetadata/Parsers/GameSystemXmlParser.cs10
-rw-r--r--MediaBrowser.LocalMetadata/Parsers/GameXmlParser.cs10
-rw-r--r--MediaBrowser.LocalMetadata/Parsers/MovieXmlParser.cs52
-rw-r--r--MediaBrowser.LocalMetadata/Parsers/MusicVideoXmlParser.cs10
-rw-r--r--MediaBrowser.LocalMetadata/Parsers/PlaylistXmlParser.cs6
-rw-r--r--MediaBrowser.LocalMetadata/Parsers/SeasonXmlParser.cs8
-rw-r--r--MediaBrowser.LocalMetadata/Parsers/SeriesXmlParser.cs10
9 files changed, 73 insertions, 69 deletions
diff --git a/MediaBrowser.LocalMetadata/Parsers/BoxSetXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/BoxSetXmlParser.cs
index f89e29d54..772af0673 100644
--- a/MediaBrowser.LocalMetadata/Parsers/BoxSetXmlParser.cs
+++ b/MediaBrowser.LocalMetadata/Parsers/BoxSetXmlParser.cs
@@ -14,7 +14,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
{
}
- protected override void FetchDataFromXmlNode(XmlReader reader, BoxSet item)
+ protected override void FetchDataFromXmlNode(XmlReader reader, MetadataResult<BoxSet> item)
{
switch (reader.Name)
{
@@ -32,7 +32,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
}
}
- private void FetchFromCollectionItemsNode(XmlReader reader, BoxSet item)
+ private void FetchFromCollectionItemsNode(XmlReader reader, MetadataResult<BoxSet> item)
{
reader.MoveToContent();
@@ -66,7 +66,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
}
}
- item.LinkedChildren = list;
+ item.Item.LinkedChildren = list;
}
}
}
diff --git a/MediaBrowser.LocalMetadata/Parsers/EpisodeXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/EpisodeXmlParser.cs
index 8430f3b3c..08454c8e7 100644
--- a/MediaBrowser.LocalMetadata/Parsers/EpisodeXmlParser.cs
+++ b/MediaBrowser.LocalMetadata/Parsers/EpisodeXmlParser.cs
@@ -1,13 +1,13 @@
-using System;
+using MediaBrowser.Controller.Entities.TV;
+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;
using System.Xml;
-using MediaBrowser.Controller.Entities.TV;
-using MediaBrowser.Controller.Providers;
-using MediaBrowser.Model.Entities;
-using MediaBrowser.Model.Logging;
namespace MediaBrowser.LocalMetadata.Parsers
{
@@ -17,7 +17,6 @@ namespace MediaBrowser.LocalMetadata.Parsers
public class EpisodeXmlParser : BaseItemXmlParser<Episode>
{
private List<LocalImageInfo> _imagesFound;
- private List<ChapterInfo> _chaptersFound;
public EpisodeXmlParser(ILogger logger)
: base(logger)
@@ -26,14 +25,12 @@ namespace MediaBrowser.LocalMetadata.Parsers
private string _xmlPath;
- public void Fetch(Episode item,
+ public void Fetch(MetadataResult<Episode> item,
List<LocalImageInfo> images,
- List<ChapterInfo> chapters,
string metadataFile,
CancellationToken cancellationToken)
{
_imagesFound = images;
- _chaptersFound = chapters;
_xmlPath = metadataFile;
Fetch(item, metadataFile, cancellationToken);
@@ -45,16 +42,13 @@ namespace MediaBrowser.LocalMetadata.Parsers
/// 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, Episode item)
+ /// <param name="result">The result.</param>
+ protected override void FetchDataFromXmlNode(XmlReader reader, MetadataResult<Episode> result)
{
+ var item = result.Item;
+
switch (reader.Name)
{
- case "Chapters":
-
- _chaptersFound.AddRange(FetchChaptersFromXmlNode(item, reader.ReadSubtree()));
- break;
-
case "Episode":
//MB generated metadata is within an "Episode" node
@@ -67,7 +61,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
{
if (subTree.NodeType == XmlNodeType.Element)
{
- FetchDataFromXmlNode(subTree, item);
+ FetchDataFromXmlNode(subTree, result);
}
}
@@ -263,7 +257,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
default:
- base.FetchDataFromXmlNode(reader, item);
+ base.FetchDataFromXmlNode(reader, result);
break;
}
}
diff --git a/MediaBrowser.LocalMetadata/Parsers/GameSystemXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/GameSystemXmlParser.cs
index d449108c4..8ae0eafec 100644
--- a/MediaBrowser.LocalMetadata/Parsers/GameSystemXmlParser.cs
+++ b/MediaBrowser.LocalMetadata/Parsers/GameSystemXmlParser.cs
@@ -16,7 +16,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
}
private readonly Task _cachedTask = Task.FromResult(true);
- public Task FetchAsync(GameSystem item, string metadataFile, CancellationToken cancellationToken)
+ public Task FetchAsync(MetadataResult<GameSystem> item, string metadataFile, CancellationToken cancellationToken)
{
Fetch(item, metadataFile, cancellationToken);
@@ -29,9 +29,11 @@ namespace MediaBrowser.LocalMetadata.Parsers
/// 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, GameSystem item)
+ /// <param name="result">The result.</param>
+ protected override void FetchDataFromXmlNode(XmlReader reader, MetadataResult<GameSystem> result)
{
+ var item = result.Item;
+
switch (reader.Name)
{
case "GameSystem":
@@ -56,7 +58,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
default:
- base.FetchDataFromXmlNode(reader, item);
+ base.FetchDataFromXmlNode(reader, result);
break;
}
}
diff --git a/MediaBrowser.LocalMetadata/Parsers/GameXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/GameXmlParser.cs
index 2caced8a9..b5a68c61f 100644
--- a/MediaBrowser.LocalMetadata/Parsers/GameXmlParser.cs
+++ b/MediaBrowser.LocalMetadata/Parsers/GameXmlParser.cs
@@ -22,7 +22,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
}
private readonly Task _cachedTask = Task.FromResult(true);
- public Task FetchAsync(Game item, string metadataFile, CancellationToken cancellationToken)
+ public Task FetchAsync(MetadataResult<Game> item, string metadataFile, CancellationToken cancellationToken)
{
Fetch(item, metadataFile, cancellationToken);
@@ -35,9 +35,11 @@ namespace MediaBrowser.LocalMetadata.Parsers
/// 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, Game item)
+ /// <param name="result">The result.</param>
+ protected override void FetchDataFromXmlNode(XmlReader reader, MetadataResult<Game> result)
{
+ var item = result.Item;
+
switch (reader.Name)
{
case "GameSystem":
@@ -97,7 +99,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
default:
- base.FetchDataFromXmlNode(reader, item);
+ base.FetchDataFromXmlNode(reader, result);
break;
}
}
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)
+ {
+ }
+ }
}
diff --git a/MediaBrowser.LocalMetadata/Parsers/MusicVideoXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/MusicVideoXmlParser.cs
index f695487c5..d93746aa0 100644
--- a/MediaBrowser.LocalMetadata/Parsers/MusicVideoXmlParser.cs
+++ b/MediaBrowser.LocalMetadata/Parsers/MusicVideoXmlParser.cs
@@ -6,7 +6,7 @@ using System.Xml;
namespace MediaBrowser.LocalMetadata.Parsers
{
- public class MusicVideoXmlParser : BaseItemXmlParser<MusicVideo>
+ public class MusicVideoXmlParser : BaseVideoXmlParser<MusicVideo>
{
/// <summary>
/// Initializes a new instance of the <see cref="BaseItemXmlParser{T}" /> class.
@@ -21,9 +21,11 @@ namespace MediaBrowser.LocalMetadata.Parsers
/// 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, MusicVideo item)
+ /// <param name="result">The result.</param>
+ protected override void FetchDataFromXmlNode(XmlReader reader, MetadataResult<MusicVideo> result)
{
+ var item = result.Item;
+
switch (reader.Name)
{
case "Artist":
@@ -44,7 +46,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
break;
default:
- base.FetchDataFromXmlNode(reader, item);
+ base.FetchDataFromXmlNode(reader, result);
break;
}
}
diff --git a/MediaBrowser.LocalMetadata/Parsers/PlaylistXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/PlaylistXmlParser.cs
index 02457ee73..d4552fe12 100644
--- a/MediaBrowser.LocalMetadata/Parsers/PlaylistXmlParser.cs
+++ b/MediaBrowser.LocalMetadata/Parsers/PlaylistXmlParser.cs
@@ -16,8 +16,10 @@ namespace MediaBrowser.LocalMetadata.Parsers
{
}
- protected override void FetchDataFromXmlNode(XmlReader reader, Playlist item)
+ protected override void FetchDataFromXmlNode(XmlReader reader, MetadataResult<Playlist> result)
{
+ var item = result.Item;
+
switch (reader.Name)
{
case "OwnerUserId":
@@ -59,7 +61,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
break;
default:
- base.FetchDataFromXmlNode(reader, item);
+ base.FetchDataFromXmlNode(reader, result);
break;
}
}
diff --git a/MediaBrowser.LocalMetadata/Parsers/SeasonXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/SeasonXmlParser.cs
index 62a7d37cf..7fd60d3f7 100644
--- a/MediaBrowser.LocalMetadata/Parsers/SeasonXmlParser.cs
+++ b/MediaBrowser.LocalMetadata/Parsers/SeasonXmlParser.cs
@@ -16,9 +16,11 @@ namespace MediaBrowser.LocalMetadata.Parsers
/// 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, Season item)
+ /// <param name="result">The result.</param>
+ protected override void FetchDataFromXmlNode(XmlReader reader, MetadataResult<Season> result)
{
+ var item = result.Item;
+
switch (reader.Name)
{
case "SeasonNumber":
@@ -38,7 +40,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
}
default:
- base.FetchDataFromXmlNode(reader, item);
+ base.FetchDataFromXmlNode(reader, result);
break;
}
}
diff --git a/MediaBrowser.LocalMetadata/Parsers/SeriesXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/SeriesXmlParser.cs
index a3d45034e..8133bd9fe 100644
--- a/MediaBrowser.LocalMetadata/Parsers/SeriesXmlParser.cs
+++ b/MediaBrowser.LocalMetadata/Parsers/SeriesXmlParser.cs
@@ -26,9 +26,11 @@ namespace MediaBrowser.LocalMetadata.Parsers
/// 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, Series item)
+ /// <param name="result">The result.</param>
+ protected override void FetchDataFromXmlNode(XmlReader reader, MetadataResult<Series> result)
{
+ var item = result.Item;
+
switch (reader.Name)
{
case "Series":
@@ -42,7 +44,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
{
if (subTree.NodeType == XmlNodeType.Element)
{
- FetchDataFromXmlNode(subTree, item);
+ FetchDataFromXmlNode(subTree, result);
}
}
@@ -110,7 +112,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
}
default:
- base.FetchDataFromXmlNode(reader, item);
+ base.FetchDataFromXmlNode(reader, result);
break;
}
}