aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Providers/People/PersonXmlProvider.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Providers/People/PersonXmlProvider.cs')
-rw-r--r--MediaBrowser.Providers/People/PersonXmlProvider.cs39
1 files changed, 5 insertions, 34 deletions
diff --git a/MediaBrowser.Providers/People/PersonXmlProvider.cs b/MediaBrowser.Providers/People/PersonXmlProvider.cs
index c23458f68..0996615d3 100644
--- a/MediaBrowser.Providers/People/PersonXmlProvider.cs
+++ b/MediaBrowser.Providers/People/PersonXmlProvider.cs
@@ -4,11 +4,10 @@ using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Logging;
using System.IO;
using System.Threading;
-using System.Threading.Tasks;
namespace MediaBrowser.Providers.People
{
- public class PersonXmlProvider : BaseXmlProvider, ILocalMetadataProvider<Person>
+ public class PersonXmlProvider : BaseXmlProvider<Person>
{
private readonly ILogger _logger;
@@ -18,42 +17,14 @@ namespace MediaBrowser.Providers.People
_logger = logger;
}
- public async Task<MetadataResult<Person>> GetMetadata(string path, CancellationToken cancellationToken)
+ protected override void Fetch(Person item, string path, CancellationToken cancellationToken)
{
- path = GetXmlFile(path).FullName;
-
- var result = new MetadataResult<Person>();
-
- await XmlParsingResourcePool.WaitAsync(cancellationToken).ConfigureAwait(false);
-
- try
- {
- var person = new Person();
-
- new BaseItemXmlParser<Person>(_logger).Fetch(person, path, cancellationToken);
- result.HasMetadata = true;
- result.Item = person;
- }
- catch (FileNotFoundException)
- {
- result.HasMetadata = false;
- }
- finally
- {
- XmlParsingResourcePool.Release();
- }
-
- return result;
- }
-
- public string Name
- {
- get { return "Media Browser Xml"; }
+ new BaseItemXmlParser<Person>(_logger).Fetch(item, path, cancellationToken);
}
- protected override FileInfo GetXmlFile(string path)
+ protected override FileInfo GetXmlFile(ItemInfo info)
{
- return new FileInfo(Path.Combine(path, "person.xml"));
+ return new FileInfo(Path.Combine(info.Path, "person.xml"));
}
}
}