aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.LocalMetadata
diff options
context:
space:
mode:
authorLuke <luke.pulverenti@gmail.com>2015-10-26 18:50:19 -0400
committerLuke <luke.pulverenti@gmail.com>2015-10-26 18:50:19 -0400
commit35778ebc02e5931142a1fe31a256b7488a07c5c2 (patch)
treeced0290be8820f5e507b51ca4c5165212b1879d1 /MediaBrowser.LocalMetadata
parentc0dc8d055bfd4d2f58591083beb9e9128357aad6 (diff)
parent8d77308593c3b16b733b0109323770d9dfe7e166 (diff)
Merge pull request #1222 from MediaBrowser/dev
3.0.5768.7
Diffstat (limited to 'MediaBrowser.LocalMetadata')
-rw-r--r--MediaBrowser.LocalMetadata/BaseXmlProvider.cs3
-rw-r--r--MediaBrowser.LocalMetadata/Images/CollectionFolderImageProvider.cs1
-rw-r--r--MediaBrowser.LocalMetadata/Images/EpisodeLocalImageProvider.cs5
-rw-r--r--MediaBrowser.LocalMetadata/Images/ImagesByNameImageProvider.cs1
-rw-r--r--MediaBrowser.LocalMetadata/Images/InternalMetadataFolderImageProvider.cs1
-rw-r--r--MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs27
-rw-r--r--MediaBrowser.LocalMetadata/MediaBrowser.LocalMetadata.csproj12
-rw-r--r--MediaBrowser.LocalMetadata/Parsers/EpisodeXmlParser.cs8
-rw-r--r--MediaBrowser.LocalMetadata/Providers/BoxSetXmlProvider.cs3
-rw-r--r--MediaBrowser.LocalMetadata/Providers/EpisodeXmlProvider.cs5
-rw-r--r--MediaBrowser.LocalMetadata/Providers/FolderXmlProvider.cs5
-rw-r--r--MediaBrowser.LocalMetadata/Providers/GameSystemXmlProvider.cs3
-rw-r--r--MediaBrowser.LocalMetadata/Providers/GameXmlProvider.cs7
-rw-r--r--MediaBrowser.LocalMetadata/Providers/MovieXmlProvider.cs16
-rw-r--r--MediaBrowser.LocalMetadata/Providers/MusicVideoXmlProvider.cs3
-rw-r--r--MediaBrowser.LocalMetadata/Providers/PersonXmlProvider.cs3
-rw-r--r--MediaBrowser.LocalMetadata/Providers/PlaylistXmlProvider.cs3
-rw-r--r--MediaBrowser.LocalMetadata/Providers/SeasonXmlProvider.cs3
-rw-r--r--MediaBrowser.LocalMetadata/Providers/SeriesXmlProvider.cs3
-rw-r--r--MediaBrowser.LocalMetadata/Providers/VideoXmlProvider.cs3
-rw-r--r--MediaBrowser.LocalMetadata/Savers/BoxSetXmlSaver.cs8
-rw-r--r--MediaBrowser.LocalMetadata/Savers/EpisodeXmlSaver.cs9
-rw-r--r--MediaBrowser.LocalMetadata/Savers/FolderXmlSaver.cs8
-rw-r--r--MediaBrowser.LocalMetadata/Savers/GameSystemXmlSaver.cs8
-rw-r--r--MediaBrowser.LocalMetadata/Savers/GameXmlSaver.cs8
-rw-r--r--MediaBrowser.LocalMetadata/Savers/MovieXmlSaver.cs8
-rw-r--r--MediaBrowser.LocalMetadata/Savers/PersonXmlSaver.cs8
-rw-r--r--MediaBrowser.LocalMetadata/Savers/PlaylistXmlSaver.cs8
-rw-r--r--MediaBrowser.LocalMetadata/Savers/SeriesXmlSaver.cs8
-rw-r--r--MediaBrowser.LocalMetadata/Savers/XmlSaverHelpers.cs24
-rw-r--r--MediaBrowser.LocalMetadata/packages.config5
31 files changed, 142 insertions, 75 deletions
diff --git a/MediaBrowser.LocalMetadata/BaseXmlProvider.cs b/MediaBrowser.LocalMetadata/BaseXmlProvider.cs
index aa0f11475f..0364eaf995 100644
--- a/MediaBrowser.LocalMetadata/BaseXmlProvider.cs
+++ b/MediaBrowser.LocalMetadata/BaseXmlProvider.cs
@@ -5,6 +5,7 @@ using System;
using System.IO;
using System.Threading;
using System.Threading.Tasks;
+using CommonIO;
namespace MediaBrowser.LocalMetadata
{
@@ -54,7 +55,7 @@ namespace MediaBrowser.LocalMetadata
FileSystem = fileSystem;
}
- protected abstract FileSystemInfo GetXmlFile(ItemInfo info, IDirectoryService directoryService);
+ protected abstract FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService);
public bool HasChanged(IHasMetadata item, IDirectoryService directoryService, DateTime date)
{
diff --git a/MediaBrowser.LocalMetadata/Images/CollectionFolderImageProvider.cs b/MediaBrowser.LocalMetadata/Images/CollectionFolderImageProvider.cs
index 90f00ff022..de2f551616 100644
--- a/MediaBrowser.LocalMetadata/Images/CollectionFolderImageProvider.cs
+++ b/MediaBrowser.LocalMetadata/Images/CollectionFolderImageProvider.cs
@@ -2,6 +2,7 @@
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Providers;
using System.Collections.Generic;
+using CommonIO;
namespace MediaBrowser.LocalMetadata.Images
{
diff --git a/MediaBrowser.LocalMetadata/Images/EpisodeLocalImageProvider.cs b/MediaBrowser.LocalMetadata/Images/EpisodeLocalImageProvider.cs
index 0089a71d52..7e64c9f5d6 100644
--- a/MediaBrowser.LocalMetadata/Images/EpisodeLocalImageProvider.cs
+++ b/MediaBrowser.LocalMetadata/Images/EpisodeLocalImageProvider.cs
@@ -7,6 +7,7 @@ using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
+using CommonIO;
namespace MediaBrowser.LocalMetadata.Images
{
@@ -60,7 +61,7 @@ namespace MediaBrowser.LocalMetadata.Images
return new List<LocalImageInfo>();
}
- private List<LocalImageInfo> GetFilesFromParentFolder(string filenameWithoutExtension, IEnumerable<FileSystemInfo> parentPathFiles)
+ private List<LocalImageInfo> GetFilesFromParentFolder(string filenameWithoutExtension, IEnumerable<FileSystemMetadata> parentPathFiles)
{
var thumbName = filenameWithoutExtension + "-thumb";
@@ -91,7 +92,7 @@ namespace MediaBrowser.LocalMetadata.Images
})
.Select(i => new LocalImageInfo
{
- FileInfo = (FileInfo)i,
+ FileInfo = i,
Type = ImageType.Primary
})
.ToList();
diff --git a/MediaBrowser.LocalMetadata/Images/ImagesByNameImageProvider.cs b/MediaBrowser.LocalMetadata/Images/ImagesByNameImageProvider.cs
index 52cff0aa96..dc6f2ae933 100644
--- a/MediaBrowser.LocalMetadata/Images/ImagesByNameImageProvider.cs
+++ b/MediaBrowser.LocalMetadata/Images/ImagesByNameImageProvider.cs
@@ -1,5 +1,6 @@
using System.Collections.Generic;
using System.IO;
+using CommonIO;
using MediaBrowser.Common.IO;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Entities;
diff --git a/MediaBrowser.LocalMetadata/Images/InternalMetadataFolderImageProvider.cs b/MediaBrowser.LocalMetadata/Images/InternalMetadataFolderImageProvider.cs
index f118c2763f..664603315b 100644
--- a/MediaBrowser.LocalMetadata/Images/InternalMetadataFolderImageProvider.cs
+++ b/MediaBrowser.LocalMetadata/Images/InternalMetadataFolderImageProvider.cs
@@ -5,6 +5,7 @@ using MediaBrowser.Controller.Entities.Audio;
using MediaBrowser.Controller.Providers;
using System.Collections.Generic;
using System.IO;
+using CommonIO;
namespace MediaBrowser.LocalMetadata.Images
{
diff --git a/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs b/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs
index ba87b3c43b..3c9736429d 100644
--- a/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs
+++ b/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs
@@ -9,6 +9,7 @@ using System.Collections.Generic;
using System.Globalization;
using System.IO;
using System.Linq;
+using CommonIO;
namespace MediaBrowser.LocalMetadata.Images
{
@@ -62,11 +63,11 @@ namespace MediaBrowser.LocalMetadata.Images
return false;
}
- private IEnumerable<FileSystemInfo> GetFiles(IHasImages item, bool includeDirectories, IDirectoryService directoryService)
+ private IEnumerable<FileSystemMetadata> GetFiles(IHasImages item, bool includeDirectories, IDirectoryService directoryService)
{
if (item.LocationType != LocationType.FileSystem)
{
- return new List<FileSystemInfo>();
+ return new List<FileSystemMetadata>();
}
var path = item.ContainingFolderPath;
@@ -127,7 +128,7 @@ namespace MediaBrowser.LocalMetadata.Images
return list;
}
- private void PopulateImages(IHasImages item, List<LocalImageInfo> images, List<FileSystemInfo> files, bool supportParentSeriesFiles, IDirectoryService directoryService)
+ private void PopulateImages(IHasImages item, List<LocalImageInfo> images, List<FileSystemMetadata> files, bool supportParentSeriesFiles, IDirectoryService directoryService)
{
var imagePrefix = item.FileNameWithoutExtension + "-";
var isInMixedFolder = item.IsInMixedFolder;
@@ -164,7 +165,7 @@ namespace MediaBrowser.LocalMetadata.Images
}
}
- private void PopulatePrimaryImages(IHasImages item, List<LocalImageInfo> images, List<FileSystemInfo> files, string imagePrefix, bool isInMixedFolder)
+ private void PopulatePrimaryImages(IHasImages item, List<LocalImageInfo> images, List<FileSystemMetadata> files, string imagePrefix, bool isInMixedFolder)
{
var names = new List<string>
{
@@ -206,7 +207,7 @@ namespace MediaBrowser.LocalMetadata.Images
}
}
- private void PopulateBackdrops(IHasImages item, List<LocalImageInfo> images, List<FileSystemInfo> files, string imagePrefix, bool isInMixedFolder, IDirectoryService directoryService)
+ private void PopulateBackdrops(IHasImages item, List<LocalImageInfo> images, List<FileSystemMetadata> files, string imagePrefix, bool isInMixedFolder, IDirectoryService directoryService)
{
PopulateBackdrops(images, files, imagePrefix, "backdrop", "backdrop", isInMixedFolder, ImageType.Backdrop);
@@ -261,12 +262,12 @@ namespace MediaBrowser.LocalMetadata.Images
}));
}
- private void PopulateScreenshots(List<LocalImageInfo> images, List<FileSystemInfo> files, string imagePrefix, bool isInMixedFolder)
+ private void PopulateScreenshots(List<LocalImageInfo> images, List<FileSystemMetadata> files, string imagePrefix, bool isInMixedFolder)
{
PopulateBackdrops(images, files, imagePrefix, "screenshot", "screenshot", isInMixedFolder, ImageType.Screenshot);
}
- private void PopulateBackdrops(List<LocalImageInfo> images, List<FileSystemInfo> files, string imagePrefix, string firstFileName, string subsequentFileNamePrefix, bool isInMixedFolder, ImageType type)
+ private void PopulateBackdrops(List<LocalImageInfo> images, List<FileSystemMetadata> files, string imagePrefix, string firstFileName, string subsequentFileNamePrefix, bool isInMixedFolder, ImageType type)
{
AddImage(files, images, imagePrefix + firstFileName, type);
@@ -349,7 +350,7 @@ namespace MediaBrowser.LocalMetadata.Images
}
}
- private bool AddImage(List<FileSystemInfo> files, List<LocalImageInfo> images, string name, string imagePrefix, bool isInMixedFolder, ImageType type)
+ private bool AddImage(List<FileSystemMetadata> files, List<LocalImageInfo> images, string name, string imagePrefix, bool isInMixedFolder, ImageType type)
{
var added = AddImage(files, images, imagePrefix + name, type);
@@ -364,9 +365,9 @@ namespace MediaBrowser.LocalMetadata.Images
return added;
}
- private bool AddImage(IEnumerable<FileSystemInfo> files, List<LocalImageInfo> images, string name, ImageType type)
+ private bool AddImage(IEnumerable<FileSystemMetadata> files, List<LocalImageInfo> images, string name, ImageType type)
{
- var image = GetImage(files, name) as FileInfo;
+ var image = GetImage(files, name);
if (image != null)
{
@@ -382,7 +383,7 @@ namespace MediaBrowser.LocalMetadata.Images
return false;
}
- private void AddCacheKeyImage(IEnumerable<FileSystemInfo> files, List<LocalImageInfo> images, ImageType type)
+ private void AddCacheKeyImage(IEnumerable<FileSystemMetadata> files, List<LocalImageInfo> images, ImageType type)
{
var candidates = files
.Where(i => _fileSystem.GetFileNameWithoutExtension(i).StartsWith(type.ToString() + "_key_", StringComparison.OrdinalIgnoreCase))
@@ -390,7 +391,7 @@ namespace MediaBrowser.LocalMetadata.Images
var image = BaseItem.SupportedImageExtensions
.Select(i => candidates.FirstOrDefault(c => string.Equals(c.Extension, i, StringComparison.OrdinalIgnoreCase)))
- .FirstOrDefault(i => i != null) as FileInfo;
+ .FirstOrDefault(i => i != null);
if (image != null)
{
@@ -402,7 +403,7 @@ namespace MediaBrowser.LocalMetadata.Images
}
}
- private FileSystemInfo GetImage(IEnumerable<FileSystemInfo> files, string name)
+ private FileSystemMetadata GetImage(IEnumerable<FileSystemMetadata> files, string name)
{
return files.FirstOrDefault(i => ((i.Attributes & FileAttributes.Directory) != FileAttributes.Directory) && string.Equals(name, _fileSystem.GetFileNameWithoutExtension(i), StringComparison.OrdinalIgnoreCase));
}
diff --git a/MediaBrowser.LocalMetadata/MediaBrowser.LocalMetadata.csproj b/MediaBrowser.LocalMetadata/MediaBrowser.LocalMetadata.csproj
index 14cec36276..a74fe7e981 100644
--- a/MediaBrowser.LocalMetadata/MediaBrowser.LocalMetadata.csproj
+++ b/MediaBrowser.LocalMetadata/MediaBrowser.LocalMetadata.csproj
@@ -11,6 +11,7 @@
<AssemblyName>MediaBrowser.LocalMetadata</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
+ <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
@@ -30,6 +31,13 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
+ <Reference Include="CommonIO, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
+ <SpecificVersion>False</SpecificVersion>
+ <HintPath>..\packages\CommonIO.1.0.0.5\lib\net45\CommonIO.dll</HintPath>
+ </Reference>
+ <Reference Include="Patterns.Logging">
+ <HintPath>..\packages\Patterns.Logging.1.0.0.2\lib\portable-net45+sl4+wp71+win8+wpa81\Patterns.Logging.dll</HintPath>
+ </Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
@@ -95,7 +103,9 @@
<Name>MediaBrowser.Model</Name>
</ProjectReference>
</ItemGroup>
- <ItemGroup />
+ <ItemGroup>
+ <None Include="packages.config" />
+ </ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
diff --git a/MediaBrowser.LocalMetadata/Parsers/EpisodeXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/EpisodeXmlParser.cs
index 08454c8e71..e3cc64605f 100644
--- a/MediaBrowser.LocalMetadata/Parsers/EpisodeXmlParser.cs
+++ b/MediaBrowser.LocalMetadata/Parsers/EpisodeXmlParser.cs
@@ -8,6 +8,8 @@ using System.Globalization;
using System.IO;
using System.Threading;
using System.Xml;
+using CommonIO;
+using MediaBrowser.Common.IO;
namespace MediaBrowser.LocalMetadata.Parsers
{
@@ -17,10 +19,12 @@ namespace MediaBrowser.LocalMetadata.Parsers
public class EpisodeXmlParser : BaseItemXmlParser<Episode>
{
private List<LocalImageInfo> _imagesFound;
+ private readonly IFileSystem _fileSystem;
- public EpisodeXmlParser(ILogger logger)
+ public EpisodeXmlParser(ILogger logger, IFileSystem fileSystem)
: base(logger)
{
+ _fileSystem = fileSystem;
}
private string _xmlPath;
@@ -80,7 +84,7 @@ namespace MediaBrowser.LocalMetadata.Parsers
var parentFolder = Path.GetDirectoryName(_xmlPath);
filename = Path.Combine(parentFolder, filename);
- var file = new FileInfo(filename);
+ var file = _fileSystem.GetFileInfo(filename);
if (file.Exists)
{
diff --git a/MediaBrowser.LocalMetadata/Providers/BoxSetXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/BoxSetXmlProvider.cs
index fc22e75c5d..01eaf33d2d 100644
--- a/MediaBrowser.LocalMetadata/Providers/BoxSetXmlProvider.cs
+++ b/MediaBrowser.LocalMetadata/Providers/BoxSetXmlProvider.cs
@@ -5,6 +5,7 @@ using MediaBrowser.LocalMetadata.Parsers;
using MediaBrowser.Model.Logging;
using System.IO;
using System.Threading;
+using CommonIO;
namespace MediaBrowser.LocalMetadata.Providers
{
@@ -26,7 +27,7 @@ namespace MediaBrowser.LocalMetadata.Providers
new BoxSetXmlParser(_logger).Fetch(result, path, cancellationToken);
}
- protected override FileSystemInfo GetXmlFile(ItemInfo info, IDirectoryService directoryService)
+ protected override FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService)
{
return directoryService.GetFile(Path.Combine(info.Path, "collection.xml"));
}
diff --git a/MediaBrowser.LocalMetadata/Providers/EpisodeXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/EpisodeXmlProvider.cs
index bf27300326..17ef5fd2e6 100644
--- a/MediaBrowser.LocalMetadata/Providers/EpisodeXmlProvider.cs
+++ b/MediaBrowser.LocalMetadata/Providers/EpisodeXmlProvider.cs
@@ -7,6 +7,7 @@ using MediaBrowser.Model.Logging;
using System.Collections.Generic;
using System.IO;
using System.Threading;
+using CommonIO;
namespace MediaBrowser.LocalMetadata.Providers
{
@@ -25,12 +26,12 @@ namespace MediaBrowser.LocalMetadata.Providers
var images = new List<LocalImageInfo>();
var chapters = new List<ChapterInfo>();
- new EpisodeXmlParser(_logger).Fetch(result, images, path, cancellationToken);
+ new EpisodeXmlParser(_logger, FileSystem).Fetch(result, images, path, cancellationToken);
result.Images = images;
}
- protected override FileSystemInfo GetXmlFile(ItemInfo info, IDirectoryService directoryService)
+ protected override FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService)
{
var metadataPath = Path.GetDirectoryName(info.Path);
metadataPath = Path.Combine(metadataPath, "metadata");
diff --git a/MediaBrowser.LocalMetadata/Providers/FolderXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/FolderXmlProvider.cs
index bf059c553f..20fa889cc4 100644
--- a/MediaBrowser.LocalMetadata/Providers/FolderXmlProvider.cs
+++ b/MediaBrowser.LocalMetadata/Providers/FolderXmlProvider.cs
@@ -1,5 +1,6 @@
using System.IO;
using System.Threading;
+using CommonIO;
using MediaBrowser.Common.IO;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Providers;
@@ -25,9 +26,9 @@ namespace MediaBrowser.LocalMetadata.Providers
new BaseItemXmlParser<Folder>(_logger).Fetch(result, path, cancellationToken);
}
- protected override FileSystemInfo GetXmlFile(ItemInfo info, IDirectoryService directoryService)
+ protected override FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService)
{
- return new FileInfo(Path.Combine(info.Path, "folder.xml"));
+ return directoryService.GetFile(Path.Combine(info.Path, "folder.xml"));
}
}
}
diff --git a/MediaBrowser.LocalMetadata/Providers/GameSystemXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/GameSystemXmlProvider.cs
index f51605f067..6abb019b4d 100644
--- a/MediaBrowser.LocalMetadata/Providers/GameSystemXmlProvider.cs
+++ b/MediaBrowser.LocalMetadata/Providers/GameSystemXmlProvider.cs
@@ -1,5 +1,6 @@
using System.IO;
using System.Threading;
+using CommonIO;
using MediaBrowser.Common.IO;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Providers;
@@ -23,7 +24,7 @@ namespace MediaBrowser.LocalMetadata.Providers
new GameSystemXmlParser(_logger).Fetch(result, path, cancellationToken);
}
- protected override FileSystemInfo GetXmlFile(ItemInfo info, IDirectoryService directoryService)
+ protected override FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService)
{
return directoryService.GetFile(Path.Combine(info.Path, "gamesystem.xml"));
}
diff --git a/MediaBrowser.LocalMetadata/Providers/GameXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/GameXmlProvider.cs
index 7ee2c768b6..8d1a4d6902 100644
--- a/MediaBrowser.LocalMetadata/Providers/GameXmlProvider.cs
+++ b/MediaBrowser.LocalMetadata/Providers/GameXmlProvider.cs
@@ -5,6 +5,7 @@ using MediaBrowser.LocalMetadata.Parsers;
using MediaBrowser.Model.Logging;
using System.IO;
using System.Threading;
+using CommonIO;
namespace MediaBrowser.LocalMetadata.Providers
{
@@ -23,12 +24,12 @@ namespace MediaBrowser.LocalMetadata.Providers
new GameXmlParser(_logger).Fetch(result, path, cancellationToken);
}
- protected override FileSystemInfo GetXmlFile(ItemInfo info, IDirectoryService directoryService)
+ protected override FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService)
{
var specificFile = Path.ChangeExtension(info.Path, ".xml");
- var file = new FileInfo(specificFile);
+ var file = FileSystem.GetFileInfo(specificFile);
- return info.IsInMixedFolder || file.Exists ? file : new FileInfo(Path.Combine(Path.GetDirectoryName(info.Path), "game.xml"));
+ return info.IsInMixedFolder || file.Exists ? file : FileSystem.GetFileInfo(Path.Combine(Path.GetDirectoryName(info.Path), "game.xml"));
}
}
}
diff --git a/MediaBrowser.LocalMetadata/Providers/MovieXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/MovieXmlProvider.cs
index 82c7dbd673..0930e91985 100644
--- a/MediaBrowser.LocalMetadata/Providers/MovieXmlProvider.cs
+++ b/MediaBrowser.LocalMetadata/Providers/MovieXmlProvider.cs
@@ -5,6 +5,7 @@ using MediaBrowser.LocalMetadata.Parsers;
using MediaBrowser.Model.Logging;
using System.IO;
using System.Threading;
+using CommonIO;
namespace MediaBrowser.LocalMetadata.Providers
{
@@ -23,27 +24,22 @@ namespace MediaBrowser.LocalMetadata.Providers
new MovieXmlParser(_logger).Fetch(result, path, cancellationToken);
}
- protected override FileSystemInfo GetXmlFile(ItemInfo info, IDirectoryService directoryService)
+ protected override FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService)
{
return GetXmlFileInfo(info, FileSystem);
}
- public static FileInfo GetXmlFileInfo(ItemInfo info, IFileSystem fileSystem)
+ public static FileSystemMetadata GetXmlFileInfo(ItemInfo info, IFileSystem fileSystem)
{
var fileInfo = fileSystem.GetFileSystemInfo(info.Path);
- var directoryInfo = fileInfo as DirectoryInfo;
-
- if (directoryInfo == null)
- {
- directoryInfo = new DirectoryInfo(Path.GetDirectoryName(info.Path));
- }
+ var directoryInfo = fileInfo.IsDirectory ? fileInfo : fileSystem.GetDirectoryInfo(Path.GetDirectoryName(info.Path));
var directoryPath = directoryInfo.FullName;
var specificFile = Path.Combine(directoryPath, fileSystem.GetFileNameWithoutExtension(info.Path) + ".xml");
- var file = new FileInfo(specificFile);
+ var file = fileSystem.GetFileInfo(specificFile);
// In a mixed folder, only {moviename}.xml is supported
if (info.IsInMixedFolder)
@@ -52,7 +48,7 @@ namespace MediaBrowser.LocalMetadata.Providers
}
// If in it's own folder, prefer movie.xml, but allow the specific file as well
- var movieFile = new FileInfo(Path.Combine(directoryPath, "movie.xml"));
+ var movieFile = fileSystem.GetFileInfo(Path.Combine(directoryPath, "movie.xml"));
return movieFile.Exists ? movieFile : file;
}
diff --git a/MediaBrowser.LocalMetadata/Providers/MusicVideoXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/MusicVideoXmlProvider.cs
index 3171dd9a71..e24e46310d 100644
--- a/MediaBrowser.LocalMetadata/Providers/MusicVideoXmlProvider.cs
+++ b/MediaBrowser.LocalMetadata/Providers/MusicVideoXmlProvider.cs
@@ -1,5 +1,6 @@
using System.IO;
using System.Threading;
+using CommonIO;
using MediaBrowser.Common.IO;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Providers;
@@ -23,7 +24,7 @@ namespace MediaBrowser.LocalMetadata.Providers
new MusicVideoXmlParser(_logger).Fetch(result, path, cancellationToken);
}
- protected override FileSystemInfo GetXmlFile(ItemInfo info, IDirectoryService directoryService)
+ protected override FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService)
{
return MovieXmlProvider.GetXmlFileInfo(info, FileSystem);
}
diff --git a/MediaBrowser.LocalMetadata/Providers/PersonXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/PersonXmlProvider.cs
index 115d5b0414..dd3541d56c 100644
--- a/MediaBrowser.LocalMetadata/Providers/PersonXmlProvider.cs
+++ b/MediaBrowser.LocalMetadata/Providers/PersonXmlProvider.cs
@@ -1,5 +1,6 @@
using System.IO;
using System.Threading;
+using CommonIO;
using MediaBrowser.Common.IO;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Providers;
@@ -22,7 +23,7 @@ namespace MediaBrowser.LocalMetadata.Providers
new BaseItemXmlParser<Person>(_logger).Fetch(result, path, cancellationToken);
}
- protected override FileSystemInfo GetXmlFile(ItemInfo info, IDirectoryService directoryService)
+ protected override FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService)
{
return directoryService.GetFile(Path.Combine(info.Path, "person.xml"));
}
diff --git a/MediaBrowser.LocalMetadata/Providers/PlaylistXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/PlaylistXmlProvider.cs
index 3de311e2bb..81c87ee4db 100644
--- a/MediaBrowser.LocalMetadata/Providers/PlaylistXmlProvider.cs
+++ b/MediaBrowser.LocalMetadata/Providers/PlaylistXmlProvider.cs
@@ -5,6 +5,7 @@ using MediaBrowser.LocalMetadata.Parsers;
using MediaBrowser.Model.Logging;
using System.IO;
using System.Threading;
+using CommonIO;
namespace MediaBrowser.LocalMetadata.Providers
{
@@ -23,7 +24,7 @@ namespace MediaBrowser.LocalMetadata.Providers
new PlaylistXmlParser(_logger).Fetch(result, path, cancellationToken);
}
- protected override FileSystemInfo GetXmlFile(ItemInfo info, IDirectoryService directoryService)
+ protected override FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService)
{
return directoryService.GetFile(Path.Combine(info.Path, "playlist.xml"));
}
diff --git a/MediaBrowser.LocalMetadata/Providers/SeasonXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/SeasonXmlProvider.cs
index f0c8f0fa1b..bea0de88eb 100644
--- a/MediaBrowser.LocalMetadata/Providers/SeasonXmlProvider.cs
+++ b/MediaBrowser.LocalMetadata/Providers/SeasonXmlProvider.cs
@@ -1,5 +1,6 @@
using System.IO;
using System.Threading;
+using CommonIO;
using MediaBrowser.Common.IO;
using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Providers;
@@ -26,7 +27,7 @@ namespace MediaBrowser.LocalMetadata.Providers
new SeasonXmlParser(_logger).Fetch(result, path, cancellationToken);
}
- protected override FileSystemInfo GetXmlFile(ItemInfo info, IDirectoryService directoryService)
+ protected override FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService)
{
return directoryService.GetFile(Path.Combine(info.Path, "season.xml"));
}
diff --git a/MediaBrowser.LocalMetadata/Providers/SeriesXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/SeriesXmlProvider.cs
index 80fdad4837..85bbcbc02b 100644
--- a/MediaBrowser.LocalMetadata/Providers/SeriesXmlProvider.cs
+++ b/MediaBrowser.LocalMetadata/Providers/SeriesXmlProvider.cs
@@ -1,5 +1,6 @@
using System.IO;
using System.Threading;
+using CommonIO;
using MediaBrowser.Common.IO;
using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Providers;
@@ -26,7 +27,7 @@ namespace MediaBrowser.LocalMetadata.Providers
new SeriesXmlParser(_logger).Fetch(result, path, cancellationToken);
}
- protected override FileSystemInfo GetXmlFile(ItemInfo info, IDirectoryService directoryService)
+ protected override FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService)
{
return directoryService.GetFile(Path.Combine(info.Path, "series.xml"));
}
diff --git a/MediaBrowser.LocalMetadata/Providers/VideoXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/VideoXmlProvider.cs
index 56d289f974..0600161b37 100644
--- a/MediaBrowser.LocalMetadata/Providers/VideoXmlProvider.cs
+++ b/MediaBrowser.LocalMetadata/Providers/VideoXmlProvider.cs
@@ -5,6 +5,7 @@ using MediaBrowser.LocalMetadata.Parsers;
using MediaBrowser.Model.Logging;
using System.IO;
using System.Threading;
+using CommonIO;
namespace MediaBrowser.LocalMetadata.Providers
{
@@ -23,7 +24,7 @@ namespace MediaBrowser.LocalMetadata.Providers
new VideoXmlParser(_logger).Fetch(result, path, cancellationToken);
}
- protected override FileSystemInfo GetXmlFile(ItemInfo info, IDirectoryService directoryService)
+ protected override FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService)
{
return MovieXmlProvider.GetXmlFileInfo(info, FileSystem);
}
diff --git a/MediaBrowser.LocalMetadata/Savers/BoxSetXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/BoxSetXmlSaver.cs
index e6ae84169d..b709c9b83d 100644
--- a/MediaBrowser.LocalMetadata/Savers/BoxSetXmlSaver.cs
+++ b/MediaBrowser.LocalMetadata/Savers/BoxSetXmlSaver.cs
@@ -6,6 +6,8 @@ using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Threading;
+using CommonIO;
+using MediaBrowser.Common.IO;
namespace MediaBrowser.LocalMetadata.Savers
{
@@ -21,11 +23,13 @@ namespace MediaBrowser.LocalMetadata.Savers
private readonly IServerConfigurationManager _config;
private readonly ILibraryManager _libraryManager;
+ private readonly IFileSystem _fileSystem;
- public BoxSetXmlSaver(IServerConfigurationManager config, ILibraryManager libraryManager)
+ public BoxSetXmlSaver(IServerConfigurationManager config, ILibraryManager libraryManager, IFileSystem fileSystem)
{
_config = config;
_libraryManager = libraryManager;
+ _fileSystem = fileSystem;
}
/// <summary>
@@ -62,7 +66,7 @@ namespace MediaBrowser.LocalMetadata.Savers
var xmlFilePath = GetSavePath(item);
- XmlSaverHelpers.Save(builder, xmlFilePath, new List<string> { }, _config);
+ XmlSaverHelpers.Save(builder, xmlFilePath, new List<string> { }, _config, _fileSystem);
}
/// <summary>
diff --git a/MediaBrowser.LocalMetadata/Savers/EpisodeXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/EpisodeXmlSaver.cs
index 96d95d40bc..dc8a16cd8b 100644
--- a/MediaBrowser.LocalMetadata/Savers/EpisodeXmlSaver.cs
+++ b/MediaBrowser.LocalMetadata/Savers/EpisodeXmlSaver.cs
@@ -9,6 +9,8 @@ using System.IO;
using System.Security;
using System.Text;
using System.Threading;
+using CommonIO;
+using MediaBrowser.Common.IO;
namespace MediaBrowser.LocalMetadata.Savers
{
@@ -19,12 +21,14 @@ namespace MediaBrowser.LocalMetadata.Savers
private readonly CultureInfo _usCulture = new CultureInfo("en-US");
private readonly IServerConfigurationManager _config;
private readonly ILibraryManager _libraryManager;
+ private IFileSystem _fileSystem;
- public EpisodeXmlProvider(IItemRepository itemRepository, IServerConfigurationManager config, ILibraryManager libraryManager)
+ public EpisodeXmlProvider(IItemRepository itemRepository, IServerConfigurationManager config, ILibraryManager libraryManager, IFileSystem fileSystem)
{
_itemRepository = itemRepository;
_config = config;
_libraryManager = libraryManager;
+ _fileSystem = fileSystem;
}
/// <summary>
@@ -143,7 +147,8 @@ namespace MediaBrowser.LocalMetadata.Savers
"DVD_episodenumber",
"DVD_season",
"absolute_number"
- }, _config);
+
+ }, _config, _fileSystem);
}
/// <summary>
diff --git a/MediaBrowser.LocalMetadata/Savers/FolderXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/FolderXmlSaver.cs
index ac56f08641..73a90ac85c 100644
--- a/MediaBrowser.LocalMetadata/Savers/FolderXmlSaver.cs
+++ b/MediaBrowser.LocalMetadata/Savers/FolderXmlSaver.cs
@@ -9,6 +9,8 @@ using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Threading;
+using CommonIO;
+using MediaBrowser.Common.IO;
namespace MediaBrowser.LocalMetadata.Savers
{
@@ -24,11 +26,13 @@ namespace MediaBrowser.LocalMetadata.Savers
private readonly IServerConfigurationManager _config;
private readonly ILibraryManager _libraryManager;
+ private readonly IFileSystem _fileSystem;
- public FolderXmlSaver(IServerConfigurationManager config, ILibraryManager libraryManager)
+ public FolderXmlSaver(IServerConfigurationManager config, ILibraryManager libraryManager, IFileSystem fileSystem)
{
_config = config;
_libraryManager = libraryManager;
+ _fileSystem = fileSystem;
}
/// <summary>
@@ -76,7 +80,7 @@ namespace MediaBrowser.LocalMetadata.Savers
var xmlFilePath = GetSavePath(item);
- XmlSaverHelpers.Save(builder, xmlFilePath, new List<string> { }, _config);
+ XmlSaverHelpers.Save(builder, xmlFilePath, new List<string> { }, _config, _fileSystem);
}
/// <summary>
diff --git a/MediaBrowser.LocalMetadata/Savers/GameSystemXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/GameSystemXmlSaver.cs
index 770f1d7f99..57a8900a43 100644
--- a/MediaBrowser.LocalMetadata/Savers/GameSystemXmlSaver.cs
+++ b/MediaBrowser.LocalMetadata/Savers/GameSystemXmlSaver.cs
@@ -6,6 +6,8 @@ using System.IO;
using System.Security;
using System.Text;
using System.Threading;
+using CommonIO;
+using MediaBrowser.Common.IO;
namespace MediaBrowser.LocalMetadata.Savers
{
@@ -21,11 +23,13 @@ namespace MediaBrowser.LocalMetadata.Savers
private readonly IServerConfigurationManager _config;
private readonly ILibraryManager _libraryManager;
+ private readonly IFileSystem _fileSystem;
- public GameSystemXmlSaver(IServerConfigurationManager config, ILibraryManager libraryManager)
+ public GameSystemXmlSaver(IServerConfigurationManager config, ILibraryManager libraryManager, IFileSystem fileSystem)
{
_config = config;
_libraryManager = libraryManager;
+ _fileSystem = fileSystem;
}
/// <summary>
@@ -69,7 +73,7 @@ namespace MediaBrowser.LocalMetadata.Savers
var xmlFilePath = GetSavePath(item);
- XmlSaverHelpers.Save(builder, xmlFilePath, new List<string> { }, _config);
+ XmlSaverHelpers.Save(builder, xmlFilePath, new List<string> { }, _config, _fileSystem);
}
/// <summary>
diff --git a/MediaBrowser.LocalMetadata/Savers/GameXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/GameXmlSaver.cs
index 26c4ff3958..89c274e12f 100644
--- a/MediaBrowser.LocalMetadata/Savers/GameXmlSaver.cs
+++ b/MediaBrowser.LocalMetadata/Savers/GameXmlSaver.cs
@@ -8,6 +8,8 @@ using System.IO;
using System.Security;
using System.Text;
using System.Threading;
+using CommonIO;
+using MediaBrowser.Common.IO;
namespace MediaBrowser.LocalMetadata.Savers
{
@@ -26,11 +28,13 @@ namespace MediaBrowser.LocalMetadata.Savers
private readonly IServerConfigurationManager _config;
private readonly ILibraryManager _libraryManager;
+ private readonly IFileSystem _fileSystem;
- public GameXmlSaver(IServerConfigurationManager config, ILibraryManager libraryManager)
+ public GameXmlSaver(IServerConfigurationManager config, ILibraryManager libraryManager, IFileSystem fileSystem)
{
_config = config;
_libraryManager = libraryManager;
+ _fileSystem = fileSystem;
}
/// <summary>
@@ -101,7 +105,7 @@ namespace MediaBrowser.LocalMetadata.Savers
"GameSystem",
"NesBox",
"NesBoxRom"
- }, _config);
+ }, _config, _fileSystem);
}
public string GetSavePath(IHasMetadata item)
diff --git a/MediaBrowser.LocalMetadata/Savers/MovieXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/MovieXmlSaver.cs
index a6fba3e9ba..2e3e7aaa1e 100644
--- a/MediaBrowser.LocalMetadata/Savers/MovieXmlSaver.cs
+++ b/MediaBrowser.LocalMetadata/Savers/MovieXmlSaver.cs
@@ -9,6 +9,8 @@ using System.IO;
using System.Security;
using System.Text;
using System.Threading;
+using CommonIO;
+using MediaBrowser.Common.IO;
namespace MediaBrowser.LocalMetadata.Savers
{
@@ -20,12 +22,14 @@ namespace MediaBrowser.LocalMetadata.Savers
private readonly IItemRepository _itemRepository;
private readonly IServerConfigurationManager _config;
private readonly ILibraryManager _libraryManager;
+ private IFileSystem _fileSystem;
- public MovieXmlProvider(IItemRepository itemRepository, IServerConfigurationManager config, ILibraryManager libraryManager)
+ public MovieXmlProvider(IItemRepository itemRepository, IServerConfigurationManager config, ILibraryManager libraryManager, IFileSystem fileSystem)
{
_itemRepository = itemRepository;
_config = config;
_libraryManager = libraryManager;
+ _fileSystem = fileSystem;
}
public string Name
@@ -122,7 +126,7 @@ namespace MediaBrowser.LocalMetadata.Savers
"Artist",
"Album",
"TmdbCollectionName"
- }, _config);
+ }, _config, _fileSystem);
}
public string GetSavePath(IHasMetadata item)
diff --git a/MediaBrowser.LocalMetadata/Savers/PersonXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/PersonXmlSaver.cs
index 9d943bfa4c..481c5967d2 100644
--- a/MediaBrowser.LocalMetadata/Savers/PersonXmlSaver.cs
+++ b/MediaBrowser.LocalMetadata/Savers/PersonXmlSaver.cs
@@ -6,6 +6,8 @@ using System.IO;
using System.Security;
using System.Text;
using System.Threading;
+using CommonIO;
+using MediaBrowser.Common.IO;
namespace MediaBrowser.LocalMetadata.Savers
{
@@ -24,11 +26,13 @@ namespace MediaBrowser.LocalMetadata.Savers
private readonly IServerConfigurationManager _config;
private readonly ILibraryManager _libraryManager;
+ private readonly IFileSystem _fileSystem;
- public PersonXmlSaver(IServerConfigurationManager config, ILibraryManager libraryManager)
+ public PersonXmlSaver(IServerConfigurationManager config, ILibraryManager libraryManager, IFileSystem fileSystem)
{
_config = config;
_libraryManager = libraryManager;
+ _fileSystem = fileSystem;
}
/// <summary>
@@ -75,7 +79,7 @@ namespace MediaBrowser.LocalMetadata.Savers
XmlSaverHelpers.Save(builder, xmlFilePath, new List<string>
{
"PlaceOfBirth"
- }, _config);
+ }, _config, _fileSystem);
}
/// <summary>
diff --git a/MediaBrowser.LocalMetadata/Savers/PlaylistXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/PlaylistXmlSaver.cs
index 7dfe59b4bb..d03b45dcdb 100644
--- a/MediaBrowser.LocalMetadata/Savers/PlaylistXmlSaver.cs
+++ b/MediaBrowser.LocalMetadata/Savers/PlaylistXmlSaver.cs
@@ -7,6 +7,8 @@ using System.IO;
using System.Security;
using System.Text;
using System.Threading;
+using CommonIO;
+using MediaBrowser.Common.IO;
namespace MediaBrowser.LocalMetadata.Savers
{
@@ -22,11 +24,13 @@ namespace MediaBrowser.LocalMetadata.Savers
private readonly IServerConfigurationManager _config;
private readonly ILibraryManager _libraryManager;
+ private readonly IFileSystem _fileSystem;
- public PlaylistXmlSaver(IServerConfigurationManager config, ILibraryManager libraryManager)
+ public PlaylistXmlSaver(IServerConfigurationManager config, ILibraryManager libraryManager, IFileSystem fileSystem)
{
_config = config;
_libraryManager = libraryManager;
+ _fileSystem = fileSystem;
}
/// <summary>
@@ -75,7 +79,7 @@ namespace MediaBrowser.LocalMetadata.Savers
"OwnerUserId",
"PlaylistMediaType"
- }, _config);
+ }, _config, _fileSystem);
}
/// <summary>
diff --git a/MediaBrowser.LocalMetadata/Savers/SeriesXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/SeriesXmlSaver.cs
index 44b1cd8d3e..9806c4216e 100644
--- a/MediaBrowser.LocalMetadata/Savers/SeriesXmlSaver.cs
+++ b/MediaBrowser.LocalMetadata/Savers/SeriesXmlSaver.cs
@@ -9,6 +9,8 @@ using System.IO;
using System.Security;
using System.Text;
using System.Threading;
+using CommonIO;
+using MediaBrowser.Common.IO;
namespace MediaBrowser.LocalMetadata.Savers
{
@@ -16,11 +18,13 @@ namespace MediaBrowser.LocalMetadata.Savers
{
private readonly IServerConfigurationManager _config;
private readonly ILibraryManager _libraryManager;
+ private IFileSystem _fileSystem;
- public SeriesXmlProvider(IServerConfigurationManager config, ILibraryManager libraryManager)
+ public SeriesXmlProvider(IServerConfigurationManager config, ILibraryManager libraryManager, IFileSystem fileSystem)
{
_config = config;
_libraryManager = libraryManager;
+ _fileSystem = fileSystem;
}
public string Name
@@ -134,7 +138,7 @@ namespace MediaBrowser.LocalMetadata.Savers
// Deprecated. No longer saving in this field.
"AnimeSeriesIndex"
- }, _config);
+ }, _config, _fileSystem);
}
/// <summary>
diff --git a/MediaBrowser.LocalMetadata/Savers/XmlSaverHelpers.cs b/MediaBrowser.LocalMetadata/Savers/XmlSaverHelpers.cs
index 091d594694..c9a4cb5378 100644
--- a/MediaBrowser.LocalMetadata/Savers/XmlSaverHelpers.cs
+++ b/MediaBrowser.LocalMetadata/Savers/XmlSaverHelpers.cs
@@ -14,6 +14,8 @@ using System.Linq;
using System.Security;
using System.Text;
using System.Xml;
+using CommonIO;
+using MediaBrowser.Common.IO;
namespace MediaBrowser.LocalMetadata.Savers
{
@@ -130,9 +132,9 @@ namespace MediaBrowser.LocalMetadata.Savers
/// <param name="xml">The XML.</param>
/// <param name="path">The path.</param>
/// <param name="xmlTagsUsed">The XML tags used.</param>
- public static void Save(StringBuilder xml, string path, List<string> xmlTagsUsed, IServerConfigurationManager config)
+ public static void Save(StringBuilder xml, string path, List<string> xmlTagsUsed, IServerConfigurationManager config, IFileSystem fileSystem)
{
- if (File.Exists(path))
+ if (fileSystem.FileExists(path))
{
var position = xml.ToString().LastIndexOf("</", StringComparison.OrdinalIgnoreCase);
xml.Insert(position, GetCustomTags(path, xmlTagsUsed));
@@ -144,7 +146,7 @@ namespace MediaBrowser.LocalMetadata.Savers
//Add the new node to the document.
xmlDocument.InsertBefore(xmlDocument.CreateXmlDeclaration("1.0", "UTF-8", "yes"), xmlDocument.DocumentElement);
- Directory.CreateDirectory(Path.GetDirectoryName(path));
+ fileSystem.CreateDirectory(Path.GetDirectoryName(path));
var wasHidden = false;
@@ -425,17 +427,13 @@ namespace MediaBrowser.LocalMetadata.Savers
}
}
- var hasLanguage = item as IHasPreferredMetadataLanguage;
- if (hasLanguage != null)
+ if (!string.IsNullOrEmpty(item.PreferredMetadataLanguage))
{
- if (!string.IsNullOrEmpty(hasLanguage.PreferredMetadataLanguage))
- {
- builder.Append("<Language>" + SecurityElement.Escape(hasLanguage.PreferredMetadataLanguage) + "</Language>");
- }
- if (!string.IsNullOrEmpty(hasLanguage.PreferredMetadataCountryCode))
- {
- builder.Append("<CountryCode>" + SecurityElement.Escape(hasLanguage.PreferredMetadataCountryCode) + "</CountryCode>");
- }
+ builder.Append("<Language>" + SecurityElement.Escape(item.PreferredMetadataLanguage) + "</Language>");
+ }
+ if (!string.IsNullOrEmpty(item.PreferredMetadataCountryCode))
+ {
+ builder.Append("<CountryCode>" + SecurityElement.Escape(item.PreferredMetadataCountryCode) + "</CountryCode>");
}
// Use original runtime here, actual file runtime later in MediaInfo
diff --git a/MediaBrowser.LocalMetadata/packages.config b/MediaBrowser.LocalMetadata/packages.config
new file mode 100644
index 0000000000..fad6af08eb
--- /dev/null
+++ b/MediaBrowser.LocalMetadata/packages.config
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<packages>
+ <package id="CommonIO" version="1.0.0.5" targetFramework="net45" />
+ <package id="Patterns.Logging" version="1.0.0.2" targetFramework="net45" />
+</packages> \ No newline at end of file