aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Providers/Games
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2014-06-29 23:04:50 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2014-06-29 23:04:50 -0400
commit3d47b495a96fce84c03d9f3177dc6dbc8a4afa3c (patch)
tree9d03bc06b30fec5695bb7a89094387ecbdd8e3e9 /MediaBrowser.Providers/Games
parent1a5a75854bd3ec4cdd771c9afdaefe0acb62c03c (diff)
fixes #795 - Support reading Xbmc nfo's
Diffstat (limited to 'MediaBrowser.Providers/Games')
-rw-r--r--MediaBrowser.Providers/Games/GameSystemXmlParser.cs64
-rw-r--r--MediaBrowser.Providers/Games/GameSystemXmlProvider.cs30
-rw-r--r--MediaBrowser.Providers/Games/GameXmlParser.cs105
-rw-r--r--MediaBrowser.Providers/Games/GameXmlProvider.cs45
4 files changed, 0 insertions, 244 deletions
diff --git a/MediaBrowser.Providers/Games/GameSystemXmlParser.cs b/MediaBrowser.Providers/Games/GameSystemXmlParser.cs
deleted file mode 100644
index 85ee509ca1..0000000000
--- a/MediaBrowser.Providers/Games/GameSystemXmlParser.cs
+++ /dev/null
@@ -1,64 +0,0 @@
-using MediaBrowser.Controller.Entities;
-using MediaBrowser.Controller.Providers;
-using MediaBrowser.Model.Entities;
-using MediaBrowser.Model.Logging;
-using System.Threading;
-using System.Threading.Tasks;
-using System.Xml;
-
-namespace MediaBrowser.Providers.Games
-{
- public class GameSystemXmlParser : BaseItemXmlParser<GameSystem>
- {
- public GameSystemXmlParser(ILogger logger)
- : base(logger)
- {
- }
-
- private readonly Task _cachedTask = Task.FromResult(true);
- public Task FetchAsync(GameSystem item, string metadataFile, CancellationToken cancellationToken)
- {
- Fetch(item, metadataFile, cancellationToken);
-
- cancellationToken.ThrowIfCancellationRequested();
-
- return _cachedTask;
- }
-
- /// <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, GameSystem item)
- {
- switch (reader.Name)
- {
- case "GameSystem":
- {
- var val = reader.ReadElementContentAsString();
- if (!string.IsNullOrWhiteSpace(val))
- {
- item.GameSystemName = val;
- }
- break;
- }
-
- case "GamesDbId":
- {
- var val = reader.ReadElementContentAsString();
- if (!string.IsNullOrWhiteSpace(val))
- {
- item.SetProviderId(MetadataProviders.Gamesdb, val);
- }
- break;
- }
-
-
- default:
- base.FetchDataFromXmlNode(reader, item);
- break;
- }
- }
- }
-}
diff --git a/MediaBrowser.Providers/Games/GameSystemXmlProvider.cs b/MediaBrowser.Providers/Games/GameSystemXmlProvider.cs
deleted file mode 100644
index db9c8f063c..0000000000
--- a/MediaBrowser.Providers/Games/GameSystemXmlProvider.cs
+++ /dev/null
@@ -1,30 +0,0 @@
-using MediaBrowser.Common.IO;
-using MediaBrowser.Controller.Entities;
-using MediaBrowser.Controller.Providers;
-using MediaBrowser.Model.Logging;
-using System.IO;
-using System.Threading;
-
-namespace MediaBrowser.Providers.Games
-{
- public class GameSystemXmlProvider : BaseXmlProvider<GameSystem>
- {
- private readonly ILogger _logger;
-
- public GameSystemXmlProvider(IFileSystem fileSystem, ILogger logger)
- : base(fileSystem)
- {
- _logger = logger;
- }
-
- protected override void Fetch(LocalMetadataResult<GameSystem> result, string path, CancellationToken cancellationToken)
- {
- new GameSystemXmlParser(_logger).Fetch(result.Item, path, cancellationToken);
- }
-
- protected override FileSystemInfo GetXmlFile(ItemInfo info, IDirectoryService directoryService)
- {
- return directoryService.GetFile(Path.Combine(info.Path, "gamesystem.xml"));
- }
- }
-}
diff --git a/MediaBrowser.Providers/Games/GameXmlParser.cs b/MediaBrowser.Providers/Games/GameXmlParser.cs
deleted file mode 100644
index dfa71e5f44..0000000000
--- a/MediaBrowser.Providers/Games/GameXmlParser.cs
+++ /dev/null
@@ -1,105 +0,0 @@
-using MediaBrowser.Controller.Entities;
-using MediaBrowser.Controller.Providers;
-using MediaBrowser.Model.Entities;
-using MediaBrowser.Model.Logging;
-using System.Globalization;
-using System.Threading;
-using System.Threading.Tasks;
-using System.Xml;
-
-namespace MediaBrowser.Providers.Games
-{
- /// <summary>
- /// Class EpisodeXmlParser
- /// </summary>
- public class GameXmlParser : BaseItemXmlParser<Game>
- {
- private readonly CultureInfo _usCulture = new CultureInfo("en-US");
-
- public GameXmlParser(ILogger logger)
- : base(logger)
- {
- }
-
- private readonly Task _cachedTask = Task.FromResult(true);
- public Task FetchAsync(Game item, string metadataFile, CancellationToken cancellationToken)
- {
- Fetch(item, metadataFile, cancellationToken);
-
- cancellationToken.ThrowIfCancellationRequested();
-
- return _cachedTask;
- }
-
- /// <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, Game item)
- {
- switch (reader.Name)
- {
- case "GameSystem":
- {
- var val = reader.ReadElementContentAsString();
- if (!string.IsNullOrWhiteSpace(val))
- {
- item.GameSystem = val;
- }
- break;
- }
-
- case "GamesDbId":
- {
- var val = reader.ReadElementContentAsString();
- if (!string.IsNullOrWhiteSpace(val))
- {
- item.SetProviderId(MetadataProviders.Gamesdb, val);
- }
- break;
- }
-
- case "NesBox":
- {
- var val = reader.ReadElementContentAsString();
- if (!string.IsNullOrWhiteSpace(val))
- {
- item.SetProviderId(MetadataProviders.NesBox, val);
- }
- break;
- }
-
- case "NesBoxRom":
- {
- var val = reader.ReadElementContentAsString();
- if (!string.IsNullOrWhiteSpace(val))
- {
- item.SetProviderId(MetadataProviders.NesBoxRom, val);
- }
- break;
- }
-
- case "Players":
- {
- var val = reader.ReadElementContentAsString();
- if (!string.IsNullOrWhiteSpace(val))
- {
- int num;
-
- if (int.TryParse(val, NumberStyles.Integer, _usCulture, out num))
- {
- item.PlayersSupported = num;
- }
- }
- break;
- }
-
-
- default:
- base.FetchDataFromXmlNode(reader, item);
- break;
- }
- }
- }
-}
diff --git a/MediaBrowser.Providers/Games/GameXmlProvider.cs b/MediaBrowser.Providers/Games/GameXmlProvider.cs
deleted file mode 100644
index 6609f9d5e7..0000000000
--- a/MediaBrowser.Providers/Games/GameXmlProvider.cs
+++ /dev/null
@@ -1,45 +0,0 @@
-using MediaBrowser.Common.IO;
-using MediaBrowser.Controller.Entities;
-using MediaBrowser.Controller.Providers;
-using MediaBrowser.Model.Logging;
-using System.IO;
-using System.Threading;
-
-namespace MediaBrowser.Providers.Games
-{
- public class GameXmlProvider : BaseXmlProvider<Game>
- {
- private readonly ILogger _logger;
-
- public GameXmlProvider(IFileSystem fileSystem, ILogger logger)
- : base(fileSystem)
- {
- _logger = logger;
- }
-
- protected override void Fetch(LocalMetadataResult<Game> result, string path, CancellationToken cancellationToken)
- {
- new GameXmlParser(_logger).Fetch(result.Item, path, cancellationToken);
- }
-
- protected override FileSystemInfo GetXmlFile(ItemInfo info, IDirectoryService directoryService)
- {
- var fileInfo = FileSystem.GetFileSystemInfo(info.Path);
-
- var directoryInfo = fileInfo as DirectoryInfo;
-
- if (directoryInfo == null)
- {
- directoryInfo = new DirectoryInfo(Path.GetDirectoryName(info.Path));
- }
-
- var directoryPath = directoryInfo.FullName;
-
- var specificFile = Path.Combine(directoryPath, Path.GetFileNameWithoutExtension(info.Path) + ".xml");
-
- var file = new FileInfo(specificFile);
-
- return info.IsInMixedFolder || file.Exists ? file : new FileInfo(Path.Combine(directoryPath, "game.xml"));
- }
- }
-}