aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.LocalMetadata/BaseXmlProvider.cs
diff options
context:
space:
mode:
authorcrobibero <cody@robibe.ro>2020-09-11 15:53:04 -0600
committercrobibero <cody@robibe.ro>2020-09-11 15:53:04 -0600
commitf13b87afa3e81e7fa2710caec58a7d6cb20f7635 (patch)
tree0f269ac5baa27b334c5377d9dec4010aedf25183 /MediaBrowser.LocalMetadata/BaseXmlProvider.cs
parent2363ad544979adf32207fa927f106fadb784f1fb (diff)
parent6bf0acb854683377bebad3ca27de17706519c420 (diff)
Merge remote-tracking branch 'upstream/master' into api-upload-subtitle
Diffstat (limited to 'MediaBrowser.LocalMetadata/BaseXmlProvider.cs')
-rw-r--r--MediaBrowser.LocalMetadata/BaseXmlProvider.cs63
1 files changed, 46 insertions, 17 deletions
diff --git a/MediaBrowser.LocalMetadata/BaseXmlProvider.cs b/MediaBrowser.LocalMetadata/BaseXmlProvider.cs
index a6553563f..b036a2cc8 100644
--- a/MediaBrowser.LocalMetadata/BaseXmlProvider.cs
+++ b/MediaBrowser.LocalMetadata/BaseXmlProvider.cs
@@ -7,12 +7,43 @@ using MediaBrowser.Model.IO;
namespace MediaBrowser.LocalMetadata
{
+ /// <summary>
+ /// The BaseXmlProvider.
+ /// </summary>
+ /// <typeparam name="T">Type of provider.</typeparam>
public abstract class BaseXmlProvider<T> : ILocalMetadataProvider<T>, IHasItemChangeMonitor, IHasOrder
where T : BaseItem, new()
{
- protected IFileSystem FileSystem;
+ /// <summary>
+ /// Initializes a new instance of the <see cref="BaseXmlProvider{T}"/> class.
+ /// </summary>
+ /// <param name="fileSystem">Instance of the <see cref="IFileSystem"/> interface.</param>
+ protected BaseXmlProvider(IFileSystem fileSystem)
+ {
+ this.FileSystem = fileSystem;
+ }
+
+ /// <inheritdoc />
+ public string Name => XmlProviderUtils.Name;
- public Task<MetadataResult<T>> GetMetadata(ItemInfo info,
+ /// After Nfo
+ /// <inheritdoc />
+ public virtual int Order => 1;
+
+ /// <summary>
+ /// Gets the IFileSystem.
+ /// </summary>
+ protected IFileSystem FileSystem { get; }
+
+ /// <summary>
+ /// Gets metadata for item.
+ /// </summary>
+ /// <param name="info">The item info.</param>
+ /// <param name="directoryService">Instance of the <see cref="IDirectoryService"/> interface.</param>
+ /// <param name="cancellationToken">The cancellation token.</param>
+ /// <returns>The metadata for item.</returns>
+ public Task<MetadataResult<T>> GetMetadata(
+ ItemInfo info,
IDirectoryService directoryService,
CancellationToken cancellationToken)
{
@@ -46,15 +77,23 @@ namespace MediaBrowser.LocalMetadata
return Task.FromResult(result);
}
+ /// <summary>
+ /// Get metadata from path.
+ /// </summary>
+ /// <param name="result">Resulting metadata.</param>
+ /// <param name="path">The path.</param>
+ /// <param name="cancellationToken">The cancellation token.</param>
protected abstract void Fetch(MetadataResult<T> result, string path, CancellationToken cancellationToken);
- protected BaseXmlProvider(IFileSystem fileSystem)
- {
- FileSystem = fileSystem;
- }
-
+ /// <summary>
+ /// Get metadata from xml file.
+ /// </summary>
+ /// <param name="info">Item inf.</param>
+ /// <param name="directoryService">Instance of the <see cref="IDirectoryService"/> interface.</param>
+ /// <returns>The file system metadata.</returns>
protected abstract FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService);
+ /// <inheritdoc />
public bool HasChanged(BaseItem item, IDirectoryService directoryService)
{
var file = GetXmlFile(new ItemInfo(item), directoryService);
@@ -66,15 +105,5 @@ namespace MediaBrowser.LocalMetadata
return file.Exists && FileSystem.GetLastWriteTimeUtc(file) > item.DateLastSaved;
}
-
- public string Name => XmlProviderUtils.Name;
-
- //After Nfo
- public virtual int Order => 1;
- }
-
- static class XmlProviderUtils
- {
- public static string Name => "Emby Xml";
}
}