Fixed: Prevent false notification for moving artist when editing

pull/4345/head
Bogdan 5 months ago
parent bdf5ad2e2b
commit 0133f4331b

@ -167,17 +167,19 @@ namespace Lidarr.Api.V1.Artist
{
var artist = _artistService.GetArtist(artistResource.Id);
var sourcePath = artist.Path;
var destinationPath = artistResource.Path;
_commandQueueManager.Push(new MoveArtistCommand
if (moveFiles)
{
ArtistId = artist.Id,
SourcePath = sourcePath,
DestinationPath = destinationPath,
MoveFiles = moveFiles,
Trigger = CommandTrigger.Manual
});
var sourcePath = artist.Path;
var destinationPath = artistResource.Path;
_commandQueueManager.Push(new MoveArtistCommand
{
ArtistId = artist.Id,
SourcePath = sourcePath,
DestinationPath = destinationPath,
Trigger = CommandTrigger.Manual
});
}
var model = artistResource.ToModel(artist);

@ -79,13 +79,12 @@ namespace Lidarr.Api.V1.Artist
}
}
if (artistToMove.Any())
if (resource.MoveFiles && artistToMove.Any())
{
_commandQueueManager.Push(new BulkMoveArtistCommand
{
DestinationRootFolder = resource.RootFolderPath,
Artist = artistToMove,
MoveFiles = resource.MoveFiles
Artist = artistToMove
});
}

@ -8,7 +8,6 @@ namespace NzbDrone.Core.Music.Commands
{
public List<BulkMoveArtist> Artist { get; set; }
public string DestinationRootFolder { get; set; }
public bool MoveFiles { get; set; }
public override bool SendUpdatesToClient => true;
public override bool RequiresDiskAccess => true;

@ -7,7 +7,6 @@ namespace NzbDrone.Core.Music.Commands
public int ArtistId { get; set; }
public string SourcePath { get; set; }
public string DestinationPath { get; set; }
public bool MoveFiles { get; set; }
public override bool SendUpdatesToClient => true;
public override bool RequiresDiskAccess => true;

@ -38,7 +38,7 @@ namespace NzbDrone.Core.Music
_logger = logger;
}
private void MoveSingleArtist(Artist artist, string sourcePath, string destinationPath, bool moveFiles, int? index = null, int? total = null)
private void MoveSingleArtist(Artist artist, string sourcePath, string destinationPath, int? index = null, int? total = null)
{
if (!_diskProvider.FolderExists(sourcePath))
{
@ -57,17 +57,14 @@ namespace NzbDrone.Core.Music
try
{
if (moveFiles)
{
_rootFolderWatchingService.ReportFileSystemChangeBeginning(sourcePath, destinationPath);
_rootFolderWatchingService.ReportFileSystemChangeBeginning(sourcePath, destinationPath);
// Ensure the parent of the artist folder exists, this will often just be the root folder, but
// in cases where people are using subfolders for first letter (etc) it may not yet exist.
_diskProvider.CreateFolder(new DirectoryInfo(destinationPath).Parent.FullName);
_diskTransferService.TransferFolder(sourcePath, destinationPath, TransferMode.Move);
// Ensure the parent of the artist folder exists, this will often just be the root folder, but
// in cases where people are using subfolders for first letter (etc) it may not yet exist.
_diskProvider.CreateFolder(new DirectoryInfo(destinationPath).Parent.FullName);
_diskTransferService.TransferFolder(sourcePath, destinationPath, TransferMode.Move);
_logger.ProgressInfo("{0} moved successfully to {1}", artist.Name, destinationPath);
}
_logger.ProgressInfo("{0} moved successfully to {1}", artist.Name, destinationPath);
_eventAggregator.PublishEvent(new ArtistMovedEvent(artist, sourcePath, destinationPath));
}
@ -91,7 +88,7 @@ namespace NzbDrone.Core.Music
{
var artist = _artistService.GetArtist(message.ArtistId);
MoveSingleArtist(artist, message.SourcePath, message.DestinationPath, message.MoveFiles);
MoveSingleArtist(artist, message.SourcePath, message.DestinationPath);
}
public void Execute(BulkMoveArtistCommand message)
@ -107,7 +104,7 @@ namespace NzbDrone.Core.Music
var artist = _artistService.GetArtist(s.ArtistId);
var destinationPath = Path.Combine(destinationRootFolder, _filenameBuilder.GetArtistFolder(artist));
MoveSingleArtist(artist, s.SourcePath, destinationPath, message.MoveFiles, index, artistToMove.Count);
MoveSingleArtist(artist, s.SourcePath, destinationPath, index, artistToMove.Count);
}
_logger.ProgressInfo("Finished moving {0} artist to '{1}'", artistToMove.Count, destinationRootFolder);

Loading…
Cancel
Save