aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Controller')
-rw-r--r--MediaBrowser.Controller/Configuration/ServerApplicationPaths.cs3
-rw-r--r--MediaBrowser.Controller/FFMpeg/ffmpeg.exe.REMOVED.git-id2
-rw-r--r--MediaBrowser.Controller/FFMpeg/ffprobe.exe.REMOVED.git-id2
-rw-r--r--MediaBrowser.Controller/Kernel.cs5
-rw-r--r--MediaBrowser.Controller/MediaBrowser.Controller.csproj1
-rw-r--r--MediaBrowser.Controller/Providers/FolderProviderFromXml.cs11
-rw-r--r--MediaBrowser.Controller/Xml/FolderXmlParser.cs12
7 files changed, 17 insertions, 19 deletions
diff --git a/MediaBrowser.Controller/Configuration/ServerApplicationPaths.cs b/MediaBrowser.Controller/Configuration/ServerApplicationPaths.cs
index 50bc1d10c..92283ab25 100644
--- a/MediaBrowser.Controller/Configuration/ServerApplicationPaths.cs
+++ b/MediaBrowser.Controller/Configuration/ServerApplicationPaths.cs
@@ -3,6 +3,9 @@ using MediaBrowser.Common.Configuration;
namespace MediaBrowser.Controller.Configuration
{
+ /// <summary>
+ /// Extends BaseApplicationPaths to add paths that are only applicable on the server
+ /// </summary>
public class ServerApplicationPaths : BaseApplicationPaths
{
private string _rootFolderPath;
diff --git a/MediaBrowser.Controller/FFMpeg/ffmpeg.exe.REMOVED.git-id b/MediaBrowser.Controller/FFMpeg/ffmpeg.exe.REMOVED.git-id
index 30743c054..925846853 100644
--- a/MediaBrowser.Controller/FFMpeg/ffmpeg.exe.REMOVED.git-id
+++ b/MediaBrowser.Controller/FFMpeg/ffmpeg.exe.REMOVED.git-id
@@ -1 +1 @@
-faf137524dd67edb423344830e1436dcdca83daf \ No newline at end of file
+480bd76ce262d65df6b87802bd9bda18cf5b1c8f \ No newline at end of file
diff --git a/MediaBrowser.Controller/FFMpeg/ffprobe.exe.REMOVED.git-id b/MediaBrowser.Controller/FFMpeg/ffprobe.exe.REMOVED.git-id
index 4ad2356c9..5ff237cfe 100644
--- a/MediaBrowser.Controller/FFMpeg/ffprobe.exe.REMOVED.git-id
+++ b/MediaBrowser.Controller/FFMpeg/ffprobe.exe.REMOVED.git-id
@@ -1 +1 @@
-a304265e8410291c1f696e74a4f9b84970bb5753 \ No newline at end of file
+1f5e9773868e0f41260f64e20090803400b9a36d \ No newline at end of file
diff --git a/MediaBrowser.Controller/Kernel.cs b/MediaBrowser.Controller/Kernel.cs
index fa650e53f..b7e0258e0 100644
--- a/MediaBrowser.Controller/Kernel.cs
+++ b/MediaBrowser.Controller/Kernel.cs
@@ -49,6 +49,11 @@ namespace MediaBrowser.Controller
/// </summary>
[ImportMany(typeof(IBaseItemResolver))]
private IEnumerable<IBaseItemResolver> EntityResolversEnumerable { get; set; }
+
+ /// <summary>
+ /// Once MEF has loaded the resolvers, sort them by priority and store them in this array
+ /// Given the sheer number of times they'll be iterated over it'll be faster to loop through an array
+ /// </summary>
internal IBaseItemResolver[] EntityResolvers { get; private set; }
/// <summary>
diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.csproj b/MediaBrowser.Controller/MediaBrowser.Controller.csproj
index 41bd42040..652a9d736 100644
--- a/MediaBrowser.Controller/MediaBrowser.Controller.csproj
+++ b/MediaBrowser.Controller/MediaBrowser.Controller.csproj
@@ -76,7 +76,6 @@
<Compile Include="Resolvers\VideoResolver.cs" />
<Compile Include="Resolvers\VirtualFolderResolver.cs" />
<Compile Include="Xml\BaseItemXmlParser.cs" />
- <Compile Include="Xml\FolderXmlParser.cs" />
<Compile Include="Xml\XmlExtensions.cs" />
</ItemGroup>
<ItemGroup>
diff --git a/MediaBrowser.Controller/Providers/FolderProviderFromXml.cs b/MediaBrowser.Controller/Providers/FolderProviderFromXml.cs
index f0c95e4f7..d0bd20a47 100644
--- a/MediaBrowser.Controller/Providers/FolderProviderFromXml.cs
+++ b/MediaBrowser.Controller/Providers/FolderProviderFromXml.cs
@@ -20,14 +20,17 @@ namespace MediaBrowser.Controller.Providers
get { return MetadataProviderPriority.First; }
}
- public override Task FetchAsync(BaseEntity item, ItemResolveEventArgs args)
+ public async override Task FetchAsync(BaseEntity item, ItemResolveEventArgs args)
+ {
+ await Task.Run(() => { Fetch(item, args); }).ConfigureAwait(false);
+ }
+
+ private void Fetch(BaseEntity item, ItemResolveEventArgs args)
{
if (args.ContainsFile("folder.xml"))
{
- return Task.Run(() => { new FolderXmlParser().Fetch(item as Folder, Path.Combine(args.Path, "folder.xml")); });
+ new BaseItemXmlParser<Folder>().Fetch(item as Folder, Path.Combine(args.Path, "folder.xml"));
}
-
- return Task.FromResult<object>(null);
}
}
}
diff --git a/MediaBrowser.Controller/Xml/FolderXmlParser.cs b/MediaBrowser.Controller/Xml/FolderXmlParser.cs
deleted file mode 100644
index 5ce3a10e5..000000000
--- a/MediaBrowser.Controller/Xml/FolderXmlParser.cs
+++ /dev/null
@@ -1,12 +0,0 @@
-using MediaBrowser.Model.Entities;
-
-namespace MediaBrowser.Controller.Xml
-{
- /// <summary>
- /// Fetches metadata for a folder.
- /// Since folder.xml contains no folder-specific values, no overrides are needed
- /// </summary>
- public class FolderXmlParser : BaseItemXmlParser<Folder>
- {
- }
-}