diff --git a/src/NzbDrone.Core/CustomFormats/CustomFormatCalculationService.cs b/src/NzbDrone.Core/CustomFormats/CustomFormatCalculationService.cs index a6ef214fc..253bdcfdc 100644 --- a/src/NzbDrone.Core/CustomFormats/CustomFormatCalculationService.cs +++ b/src/NzbDrone.Core/CustomFormats/CustomFormatCalculationService.cs @@ -1,6 +1,7 @@ using System.Collections.Generic; using System.IO; using System.Linq; +using NLog; using NzbDrone.Common.Extensions; using NzbDrone.Core.Blocklisting; using NzbDrone.Core.History; @@ -23,10 +24,12 @@ namespace NzbDrone.Core.CustomFormats public class CustomFormatCalculationService : ICustomFormatCalculationService { private readonly ICustomFormatService _formatService; + private readonly Logger _logger; - public CustomFormatCalculationService(ICustomFormatService formatService) + public CustomFormatCalculationService(ICustomFormatService formatService, Logger logger) { _formatService = formatService; + _logger = logger; } public List ParseCustomFormat(RemoteAlbum remoteAlbum, long size) @@ -145,26 +148,30 @@ namespace NzbDrone.Core.CustomFormats return matches.OrderBy(x => x.Name).ToList(); } - private static List ParseCustomFormat(TrackFile trackFile, Artist artist, List allCustomFormats) + private List ParseCustomFormat(TrackFile trackFile, Artist artist, List allCustomFormats) { - var sceneName = string.Empty; + var releaseTitle = string.Empty; + if (trackFile.SceneName.IsNotNullOrWhiteSpace()) { - sceneName = trackFile.SceneName; + _logger.Trace("Using scene name for release title: {0}", trackFile.SceneName); + releaseTitle = trackFile.SceneName; } else if (trackFile.OriginalFilePath.IsNotNullOrWhiteSpace()) { - sceneName = trackFile.OriginalFilePath; + _logger.Trace("Using original file path for release title: {0}", Path.GetFileName(trackFile.OriginalFilePath)); + releaseTitle = trackFile.OriginalFilePath; } else if (trackFile.Path.IsNotNullOrWhiteSpace()) { - sceneName = Path.GetFileName(trackFile.Path); + _logger.Trace("Using path for release title: {0}", Path.GetFileName(trackFile.Path)); + releaseTitle = Path.GetFileName(trackFile.Path); } var episodeInfo = new ParsedAlbumInfo { ArtistName = artist.Name, - ReleaseTitle = sceneName, + ReleaseTitle = releaseTitle, Quality = trackFile.Quality, ReleaseGroup = trackFile.ReleaseGroup };