From da20e8dcd2867df0a9a6ebc1081edb2db2eebdef Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Sat, 29 Oct 2016 16:02:21 -0400 Subject: continue with .net core targeting --- MediaBrowser.LocalMetadata/Savers/GameXmlSaver.cs | 92 ++++++++--------------- 1 file changed, 30 insertions(+), 62 deletions(-) (limited to 'MediaBrowser.LocalMetadata') diff --git a/MediaBrowser.LocalMetadata/Savers/GameXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/GameXmlSaver.cs index 4e67036779..26c4b4a930 100644 --- a/MediaBrowser.LocalMetadata/Savers/GameXmlSaver.cs +++ b/MediaBrowser.LocalMetadata/Savers/GameXmlSaver.cs @@ -4,46 +4,21 @@ using MediaBrowser.Controller.Library; using System.Collections.Generic; using System.Globalization; using System.IO; -using System.Security; -using System.Text; -using System.Threading; -using MediaBrowser.Common.IO; -using MediaBrowser.Controller.IO; +using System.Xml; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Logging; +using MediaBrowser.Model.Xml; namespace MediaBrowser.LocalMetadata.Savers { /// /// Saves game.xml for games /// - public class GameXmlSaver : IMetadataFileSaver + public class GameXmlSaver : BaseXmlSaver { - public string Name - { - get - { - return XmlProviderUtils.Name; - } - } - - private readonly IServerConfigurationManager _config; - private readonly ILibraryManager _libraryManager; - private readonly IFileSystem _fileSystem; - - public GameXmlSaver(IServerConfigurationManager config, ILibraryManager libraryManager, IFileSystem fileSystem) - { - _config = config; - _libraryManager = libraryManager; - _fileSystem = fileSystem; - } + private static readonly CultureInfo UsCulture = new CultureInfo("en-US"); - /// - /// Determines whether [is enabled for] [the specified item]. - /// - /// The item. - /// Type of the update. - /// true if [is enabled for] [the specified item]; otherwise, false. - public bool IsEnabledFor(IHasMetadata item, ItemUpdateType updateType) + public override bool IsEnabledFor(IHasMetadata item, ItemUpdateType updateType) { if (!item.SupportsLocalMetadata) { @@ -53,52 +28,41 @@ namespace MediaBrowser.LocalMetadata.Savers return item is Game && updateType >= ItemUpdateType.MetadataDownload; } - private static readonly CultureInfo UsCulture = new CultureInfo("en-US"); - - /// - /// Saves the specified item. - /// - /// The item. - /// The cancellation token. - /// Task. - public void Save(IHasMetadata item, CancellationToken cancellationToken) + protected override List GetTagsUsed() { - var builder = new StringBuilder(); + var list = new List + { + "GameSystem", + "Players" + }; - builder.Append(""); + return list; + } + protected override void WriteCustomElements(IHasMetadata item, XmlWriter writer) + { var game = (Game)item; - if (game.PlayersSupported.HasValue) + if (!string.IsNullOrEmpty(game.GameSystem)) { - builder.Append("" + SecurityElement.Escape(game.PlayersSupported.Value.ToString(UsCulture)) + ""); + writer.WriteElementString("GameSystem", game.GameSystem); } - - if (!string.IsNullOrEmpty(game.GameSystem)) + if (game.PlayersSupported.HasValue) { - builder.Append("" + SecurityElement.Escape(game.GameSystem) + ""); + writer.WriteElementString("Players", game.PlayersSupported.Value.ToString(UsCulture)); } - - XmlSaverHelpers.AddCommonNodes(game, _libraryManager, builder); - - builder.Append(""); - - var xmlFilePath = GetSavePath(item); - - XmlSaverHelpers.Save(builder, xmlFilePath, new List - { - "Players", - "GameSystem", - "NesBox", - "NesBoxRom" - }, _config, _fileSystem); } - public string GetSavePath(IHasMetadata item) + protected override string GetLocalSavePath(IHasMetadata item) { return GetGameSavePath((Game)item); } + protected override string GetRootElementName(IHasMetadata item) + { + return "Item"; + } + public static string GetGameSavePath(Game item) { if (item.DetectIsInMixedFolder()) @@ -108,5 +72,9 @@ namespace MediaBrowser.LocalMetadata.Savers return Path.Combine(item.ContainingFolderPath, "game.xml"); } + + public GameXmlSaver(IFileSystem fileSystem, IServerConfigurationManager configurationManager, ILibraryManager libraryManager, IUserManager userManager, IUserDataManager userDataManager, ILogger logger, IXmlReaderSettingsFactory xmlReaderSettingsFactory) : base(fileSystem, configurationManager, libraryManager, userManager, userDataManager, logger, xmlReaderSettingsFactory) + { + } } } -- cgit v1.2.3 From f676ea63156f959d08eb4d324274ef2fef853933 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Sun, 30 Oct 2016 03:02:23 -0400 Subject: make local metadata project portable --- MediaBrowser.LocalMetadata/BaseXmlProvider.cs | 2 +- .../Images/ImagesByNameImageProvider.cs | 2 +- .../Images/InternalMetadataFolderImageProvider.cs | 2 +- .../MediaBrowser.LocalMetadata.csproj | 14 +- .../Parsers/BaseItemXmlParser.cs | 48 +- .../Parsers/BoxSetXmlParser.cs | 11 +- .../Parsers/EpisodeXmlParser.cs | 5 +- .../Parsers/GameSystemXmlParser.cs | 11 +- .../Parsers/GameXmlParser.cs | 11 +- .../Parsers/MovieXmlParser.cs | 16 +- .../Parsers/MusicVideoXmlParser.cs | 15 +- .../Parsers/PlaylistXmlParser.cs | 11 +- .../Parsers/SeriesXmlParser.cs | 15 +- .../Providers/BoxSetXmlProvider.cs | 7 +- .../Providers/EpisodeXmlProvider.cs | 7 +- .../Providers/FolderXmlProvider.cs | 7 +- .../Providers/GameSystemXmlProvider.cs | 7 +- .../Providers/GameXmlProvider.cs | 7 +- .../Providers/MovieXmlProvider.cs | 7 +- .../Providers/MusicVideoXmlProvider.cs | 7 +- .../Providers/PersonXmlProvider.cs | 7 +- .../Providers/PlaylistXmlProvider.cs | 7 +- .../Providers/SeriesXmlProvider.cs | 7 +- .../Providers/VideoXmlProvider.cs | 7 +- MediaBrowser.LocalMetadata/Savers/BaseXmlSaver.cs | 394 ++++++++++++- .../Savers/BoxSetXmlSaver.cs | 62 +- .../Savers/PersonXmlSaver.cs | 79 +-- .../Savers/PlaylistXmlSaver.cs | 86 +-- .../Savers/XmlSaverHelpers.cs | 649 --------------------- MediaBrowser.LocalMetadata/project.json | 7 + MediaBrowser.LocalMetadata/project.lock.json | 12 + 31 files changed, 603 insertions(+), 926 deletions(-) delete mode 100644 MediaBrowser.LocalMetadata/Savers/XmlSaverHelpers.cs create mode 100644 MediaBrowser.LocalMetadata/project.json create mode 100644 MediaBrowser.LocalMetadata/project.lock.json (limited to 'MediaBrowser.LocalMetadata') diff --git a/MediaBrowser.LocalMetadata/BaseXmlProvider.cs b/MediaBrowser.LocalMetadata/BaseXmlProvider.cs index cf95e46290..9f5a12104d 100644 --- a/MediaBrowser.LocalMetadata/BaseXmlProvider.cs +++ b/MediaBrowser.LocalMetadata/BaseXmlProvider.cs @@ -40,7 +40,7 @@ namespace MediaBrowser.LocalMetadata { result.HasMetadata = false; } - catch (DirectoryNotFoundException) + catch (IOException) { result.HasMetadata = false; } diff --git a/MediaBrowser.LocalMetadata/Images/ImagesByNameImageProvider.cs b/MediaBrowser.LocalMetadata/Images/ImagesByNameImageProvider.cs index 6b2056289e..8a6dde6c4a 100644 --- a/MediaBrowser.LocalMetadata/Images/ImagesByNameImageProvider.cs +++ b/MediaBrowser.LocalMetadata/Images/ImagesByNameImageProvider.cs @@ -49,7 +49,7 @@ namespace MediaBrowser.LocalMetadata.Images { return new LocalImageProvider(_fileSystem).GetImages(item, path, directoryService); } - catch (DirectoryNotFoundException) + catch (IOException) { return new List(); } diff --git a/MediaBrowser.LocalMetadata/Images/InternalMetadataFolderImageProvider.cs b/MediaBrowser.LocalMetadata/Images/InternalMetadataFolderImageProvider.cs index e4ddb409fb..b29182d96a 100644 --- a/MediaBrowser.LocalMetadata/Images/InternalMetadataFolderImageProvider.cs +++ b/MediaBrowser.LocalMetadata/Images/InternalMetadataFolderImageProvider.cs @@ -69,7 +69,7 @@ namespace MediaBrowser.LocalMetadata.Images { return new LocalImageProvider(_fileSystem).GetImages(item, path, directoryService); } - catch (DirectoryNotFoundException) + catch (IOException) { return new List(); } diff --git a/MediaBrowser.LocalMetadata/MediaBrowser.LocalMetadata.csproj b/MediaBrowser.LocalMetadata/MediaBrowser.LocalMetadata.csproj index f2812eb3af..8193e6afd7 100644 --- a/MediaBrowser.LocalMetadata/MediaBrowser.LocalMetadata.csproj +++ b/MediaBrowser.LocalMetadata/MediaBrowser.LocalMetadata.csproj @@ -9,10 +9,11 @@ Properties MediaBrowser.LocalMetadata MediaBrowser.LocalMetadata - v4.6 512 ..\ - + {786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + Profile7 + v4.5 true @@ -31,12 +32,6 @@ prompt 4 - - - - - - Properties\SharedVersion.cs @@ -75,7 +70,6 @@ - @@ -91,7 +85,7 @@ MediaBrowser.Model - +