af1152b001
Refactored all C# test files to use explicit namespace declarations and moved all using directives inside the namespace block for consistency. Updated assembly info and cache files to reflect the new build. Adjusted MvcTestingAppManifest.json to use fully qualified assembly names. No functional changes; all updates are related to code style, organization, and project metadata.
68 lines
3.0 KiB
C#
68 lines
3.0 KiB
C#
// <copyright file="ArtistNfoProvider.cs" company="PlaceholderCompany">
|
|
// Copyright (c) PlaceholderCompany. All rights reserved.
|
|
// </copyright>
|
|
|
|
namespace MediaBrowser.XbmcMetadata.Providers
|
|
{
|
|
using System.IO;
|
|
using System.Threading;
|
|
using MediaBrowser.Common.Configuration;
|
|
using MediaBrowser.Controller.Entities.Audio;
|
|
using MediaBrowser.Controller.Library;
|
|
using MediaBrowser.Controller.Providers;
|
|
using MediaBrowser.Model.IO;
|
|
using MediaBrowser.XbmcMetadata.Parsers;
|
|
using Microsoft.Extensions.Logging;
|
|
|
|
/// <summary>
|
|
/// Nfo provider for artists.
|
|
/// </summary>
|
|
public class ArtistNfoProvider : BaseNfoProvider<MusicArtist>
|
|
{
|
|
private readonly ILogger<ArtistNfoProvider> _logger;
|
|
private readonly IConfigurationManager _config;
|
|
private readonly IProviderManager _providerManager;
|
|
private readonly IUserManager _userManager;
|
|
private readonly IUserDataManager _userDataManager;
|
|
private readonly IDirectoryService _directoryService;
|
|
|
|
/// <summary>
|
|
/// Initializes a new instance of the <see cref="ArtistNfoProvider"/> class.
|
|
/// </summary>
|
|
/// <param name="logger">Instance of the <see cref="ILogger{ArtistNfoProvider}"/> interface.</param>
|
|
/// <param name="fileSystem">Instance of the <see cref="IFileSystem"/> interface.</param>
|
|
/// <param name="config">Instance of the <see cref="IConfigurationManager"/> interface.</param>
|
|
/// <param name="providerManager">Instance of the <see cref="IProviderManager"/> interface.</param>
|
|
/// <param name="userManager">Instance of the <see cref="IUserManager"/> interface.</param>
|
|
/// <param name="userDataManager">Instance of the <see cref="IUserDataManager"/> interface.</param>
|
|
/// <param name="directoryService">Instance of the <see cref="IDirectoryService"/> interface.</param>
|
|
public ArtistNfoProvider(
|
|
IFileSystem fileSystem,
|
|
ILogger<ArtistNfoProvider> logger,
|
|
IConfigurationManager config,
|
|
IProviderManager providerManager,
|
|
IUserManager userManager,
|
|
IUserDataManager userDataManager,
|
|
IDirectoryService directoryService)
|
|
: base(fileSystem)
|
|
{
|
|
_logger = logger;
|
|
_config = config;
|
|
_providerManager = providerManager;
|
|
_userManager = userManager;
|
|
_userDataManager = userDataManager;
|
|
_directoryService = directoryService;
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
protected override void Fetch(MetadataResult<MusicArtist> result, string path, CancellationToken cancellationToken)
|
|
{
|
|
new BaseNfoParser<MusicArtist>(_logger, _config, _providerManager, _userManager, _userDataManager, _directoryService).Fetch(result, path, cancellationToken);
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
protected override FileSystemMetadata? GetXmlFile(ItemInfo info, IDirectoryService directoryService)
|
|
=> directoryService.GetFile(Path.Combine(info.Path, "artist.nfo"));
|
|
}
|
|
}
|