diff options
Diffstat (limited to 'MediaBrowser.XbmcMetadata/Providers')
10 files changed, 133 insertions, 40 deletions
diff --git a/MediaBrowser.XbmcMetadata/Providers/AlbumNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/AlbumNfoProvider.cs index c31df91e3..4b1ee4c9c 100644 --- a/MediaBrowser.XbmcMetadata/Providers/AlbumNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/AlbumNfoProvider.cs @@ -9,15 +9,25 @@ using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Providers { + /// <summary> + /// Nfo provider for albums. + /// </summary> public class AlbumNfoProvider : BaseNfoProvider<MusicAlbum> { private readonly ILogger _logger; private readonly IConfigurationManager _config; private readonly IProviderManager _providerManager; + /// <summary> + /// Initializes a new instance of the <see cref="AlbumNfoProvider"/> class. + /// </summary> + /// <param name="logger">The logger.</param> + /// <param name="fileSystem">The file system.</param> + /// <param name="config">the configuration manager.</param> + /// <param name="providerManager">The provider manager.</param> public AlbumNfoProvider( - IFileSystem fileSystem, ILogger<AlbumNfoProvider> logger, + IFileSystem fileSystem, IConfigurationManager config, IProviderManager providerManager) : base(fileSystem) diff --git a/MediaBrowser.XbmcMetadata/Providers/ArtistNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/ArtistNfoProvider.cs index bc87a06d6..3bbfa6e83 100644 --- a/MediaBrowser.XbmcMetadata/Providers/ArtistNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/ArtistNfoProvider.cs @@ -9,12 +9,22 @@ using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Providers { + /// <summary> + /// Nfo provider for artists. + /// </summary> public class ArtistNfoProvider : BaseNfoProvider<MusicArtist> { private readonly ILogger _logger; private readonly IConfigurationManager _config; private readonly IProviderManager _providerManager; + /// <summary> + /// Initializes a new instance of the <see cref="ArtistNfoProvider"/> class. + /// </summary> + /// <param name="logger">The logger.</param> + /// <param name="fileSystem">The file system.</param> + /// <param name="config">the configuration manager.</param> + /// <param name="providerManager">The provider manager.</param> public ArtistNfoProvider( IFileSystem fileSystem, ILogger<ArtistNfoProvider> logger, diff --git a/MediaBrowser.XbmcMetadata/Providers/BaseNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/BaseNfoProvider.cs index ff3368bb9..6ad6c18a5 100644 --- a/MediaBrowser.XbmcMetadata/Providers/BaseNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/BaseNfoProvider.cs @@ -1,3 +1,5 @@ +#pragma warning disable CS1591 + using System.IO; using System.Threading; using System.Threading.Tasks; @@ -19,6 +21,9 @@ namespace MediaBrowser.XbmcMetadata.Providers } /// <inheritdoc /> + public string Name => BaseNfoSaver.SaverName; + + /// <inheritdoc /> public Task<MetadataResult<T>> GetMetadata( ItemInfo info, IDirectoryService directoryService, @@ -55,12 +60,6 @@ namespace MediaBrowser.XbmcMetadata.Providers } /// <inheritdoc /> - protected abstract void Fetch(MetadataResult<T> result, string path, CancellationToken cancellationToken); - - /// <inheritdoc /> - protected abstract FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService); - - /// <inheritdoc /> public bool HasChanged(BaseItem item, IDirectoryService directoryService) { var file = GetXmlFile(new ItemInfo(item), directoryService); @@ -73,6 +72,8 @@ namespace MediaBrowser.XbmcMetadata.Providers return file.Exists && _fileSystem.GetLastWriteTimeUtc(file) > item.DateLastSaved; } - public string Name => BaseNfoSaver.SaverName; + protected abstract void Fetch(MetadataResult<T> result, string path, CancellationToken cancellationToken); + + protected abstract FileSystemMetadata GetXmlFile(ItemInfo info, IDirectoryService directoryService); } } diff --git a/MediaBrowser.XbmcMetadata/Providers/BaseVideoNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/BaseVideoNfoProvider.cs index 7410b97e0..84c99664a 100644 --- a/MediaBrowser.XbmcMetadata/Providers/BaseVideoNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/BaseVideoNfoProvider.cs @@ -1,3 +1,5 @@ +#pragma warning disable CS1591 + using System.Linq; using System.Threading; using MediaBrowser.Common.Configuration; @@ -10,14 +12,18 @@ using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Providers { - public class BaseVideoNfoProvider<T> : BaseNfoProvider<T> + public abstract class BaseVideoNfoProvider<T> : BaseNfoProvider<T> where T : Video, new() { private readonly ILogger _logger; private readonly IConfigurationManager _config; private readonly IProviderManager _providerManager; - public BaseVideoNfoProvider(IFileSystem fileSystem, ILogger logger, IConfigurationManager config, IProviderManager providerManager) + public BaseVideoNfoProvider( + ILogger logger, + IFileSystem fileSystem, + IConfigurationManager config, + IProviderManager providerManager) : base(fileSystem) { _logger = logger; diff --git a/MediaBrowser.XbmcMetadata/Providers/EpisodeNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/EpisodeNfoProvider.cs index 691298e75..b2dc2e38e 100644 --- a/MediaBrowser.XbmcMetadata/Providers/EpisodeNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/EpisodeNfoProvider.cs @@ -9,15 +9,25 @@ using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Providers { + /// <summary> + /// Nfo provider for episodes. + /// </summary> public class EpisodeNfoProvider : BaseNfoProvider<Episode> { private readonly ILogger _logger; private readonly IConfigurationManager _config; private readonly IProviderManager _providerManager; + /// <summary> + /// Initializes a new instance of the <see cref="EpisodeNfoProvider"/> class. + /// </summary> + /// <param name="logger">The logger.</param> + /// <param name="fileSystem">The file system.</param> + /// <param name="config">the configuration manager.</param> + /// <param name="providerManager">The provider manager.</param> public EpisodeNfoProvider( + ILogger<EpisodeNfoProvider> logger, IFileSystem fileSystem, - ILogger<EpisodeNfoParser> logger, IConfigurationManager config, IProviderManager providerManager) : base(fileSystem) diff --git a/MediaBrowser.XbmcMetadata/Providers/MovieNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/MovieNfoProvider.cs index 452bed1f1..e3f6bada1 100644 --- a/MediaBrowser.XbmcMetadata/Providers/MovieNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/MovieNfoProvider.cs @@ -1,5 +1,4 @@ using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; @@ -7,38 +6,24 @@ using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Providers { + /// <summary> + /// Nfo provider for movies. + /// </summary> public class MovieNfoProvider : BaseVideoNfoProvider<Movie> { + /// <summary> + /// Initializes a new instance of the <see cref="MovieNfoProvider"/> class. + /// </summary> + /// <param name="logger">The logger.</param> + /// <param name="fileSystem">The file system.</param> + /// <param name="config">the configuration manager.</param> + /// <param name="providerManager">The provider manager.</param> public MovieNfoProvider( - IFileSystem fileSystem, ILogger<MovieNfoProvider> logger, - IConfigurationManager config, - IProviderManager providerManager) - : base(fileSystem, logger, config, providerManager) - { - } - } - - public class MusicVideoNfoProvider : BaseVideoNfoProvider<MusicVideo> - { - public MusicVideoNfoProvider( - IFileSystem fileSystem, - ILogger<MusicVideoNfoProvider> logger, - IConfigurationManager config, - IProviderManager providerManager) - : base(fileSystem, logger, config, providerManager) - { - } - } - - public class VideoNfoProvider : BaseVideoNfoProvider<Video> - { - public VideoNfoProvider( IFileSystem fileSystem, - ILogger<VideoNfoProvider> logger, IConfigurationManager config, IProviderManager providerManager) - : base(fileSystem, logger, config, providerManager) + : base(logger, fileSystem, config, providerManager) { } } diff --git a/MediaBrowser.XbmcMetadata/Providers/MusicVideoNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/MusicVideoNfoProvider.cs new file mode 100644 index 000000000..b490a7120 --- /dev/null +++ b/MediaBrowser.XbmcMetadata/Providers/MusicVideoNfoProvider.cs @@ -0,0 +1,26 @@ +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.IO; +using Microsoft.Extensions.Logging; + +namespace MediaBrowser.XbmcMetadata.Providers +{ + /// <summary> + /// Nfo provider for music videos. + /// </summary> + public class MusicVideoNfoProvider : BaseVideoNfoProvider<MusicVideo> + { + /// <summary> + /// Initializes a new instance of the <see cref="MusicVideoNfoProvider"/> class. + /// </summary> + /// <param name="logger">The logger.</param> + /// <param name="fileSystem">The file system.</param> + /// <param name="config">the configuration manager.</param> + /// <param name="providerManager">The provider manager.</param> + public MusicVideoNfoProvider(ILogger<MusicVideoNfoProvider> logger, IFileSystem fileSystem, IConfigurationManager config, IProviderManager providerManager) + : base(logger, fileSystem, config, providerManager) + { + } + } +} diff --git a/MediaBrowser.XbmcMetadata/Providers/SeasonNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/SeasonNfoProvider.cs index 49f46e08f..63ddd6025 100644 --- a/MediaBrowser.XbmcMetadata/Providers/SeasonNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/SeasonNfoProvider.cs @@ -9,15 +9,25 @@ using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Providers { + /// <summary> + /// Nfo provider for seasons. + /// </summary> public class SeasonNfoProvider : BaseNfoProvider<Season> { private readonly ILogger _logger; private readonly IConfigurationManager _config; private readonly IProviderManager _providerManager; + /// <summary> + /// Initializes a new instance of the <see cref="SeasonNfoProvider"/> class. + /// </summary> + /// <param name="logger">The logger.</param> + /// <param name="fileSystem">The file system.</param> + /// <param name="config">the configuration manager.</param> + /// <param name="providerManager">The provider manager.</param> public SeasonNfoProvider( - IFileSystem fileSystem, ILogger<SeasonNfoProvider> logger, + IFileSystem fileSystem, IConfigurationManager config, IProviderManager providerManager) : base(fileSystem) @@ -38,4 +48,3 @@ namespace MediaBrowser.XbmcMetadata.Providers => directoryService.GetFile(Path.Combine(info.Path, "season.nfo")); } } - diff --git a/MediaBrowser.XbmcMetadata/Providers/SeriesNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/SeriesNfoProvider.cs index e0a3f425f..d65914542 100644 --- a/MediaBrowser.XbmcMetadata/Providers/SeriesNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/SeriesNfoProvider.cs @@ -9,15 +9,25 @@ using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Providers { + /// <summary> + /// Nfo provider for series. + /// </summary> public class SeriesNfoProvider : BaseNfoProvider<Series> { private readonly ILogger _logger; private readonly IConfigurationManager _config; private readonly IProviderManager _providerManager; + /// <summary> + /// Initializes a new instance of the <see cref="SeriesNfoProvider"/> class. + /// </summary> + /// <param name="logger">The logger.</param> + /// <param name="fileSystem">The file system.</param> + /// <param name="config">the configuration manager.</param> + /// <param name="providerManager">The provider manager.</param> public SeriesNfoProvider( - IFileSystem fileSystem, ILogger<SeriesNfoProvider> logger, + IFileSystem fileSystem, IConfigurationManager config, IProviderManager providerManager) : base(fileSystem) diff --git a/MediaBrowser.XbmcMetadata/Providers/VideoNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/VideoNfoProvider.cs new file mode 100644 index 000000000..f66ad30ca --- /dev/null +++ b/MediaBrowser.XbmcMetadata/Providers/VideoNfoProvider.cs @@ -0,0 +1,26 @@ +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.IO; +using Microsoft.Extensions.Logging; + +namespace MediaBrowser.XbmcMetadata.Providers +{ + /// <summary> + /// Nfo provider for videos. + /// </summary> + public class VideoNfoProvider : BaseVideoNfoProvider<Video> + { + /// <summary> + /// Initializes a new instance of the <see cref="VideoNfoProvider"/> class. + /// </summary> + /// <param name="logger">The logger.</param> + /// <param name="fileSystem">The file system.</param> + /// <param name="config">the configuration manager.</param> + /// <param name="providerManager">The provider manager.</param> + public VideoNfoProvider(ILogger<VideoNfoProvider> logger, IFileSystem fileSystem, IConfigurationManager config, IProviderManager providerManager) + : base(logger, fileSystem, config, providerManager) + { + } + } +} |
