Cover art image gets deleted when the song has been deleted #50
This commit is contained in:
@@ -43,6 +43,31 @@ namespace Icarus.Controllers.Managers
|
||||
Console.WriteLine("Nothing wrong here");
|
||||
Console.WriteLine($"song cover art id {song.CoverArtId}");
|
||||
}
|
||||
public void DeleteCoverArtFromDatabase(CoverArt coverArt,
|
||||
CoverArtRepository coverArtRepository)
|
||||
{
|
||||
_logger.Info("Attempting to delete cover art from the database");
|
||||
coverArtRepository.DeleteCoverArt(coverArt);
|
||||
}
|
||||
public void DeleteCoverArt(CoverArt coverArt)
|
||||
{
|
||||
try
|
||||
{
|
||||
var stockCoverArtPath = _rootCoverArtPath + "/CoverArt.png";
|
||||
if (!string.Equals(stockCoverArtPath, coverArt.ImagePath,
|
||||
StringComparison.CurrentCultureIgnoreCase))
|
||||
{
|
||||
_logger.Info("Song does not contain the stock cover art");
|
||||
File.Delete(coverArt.ImagePath);
|
||||
_logger.Info("Cover art deleted from the database");
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
var msg = ex.Message;
|
||||
_logger.Error(msg, "An error occurred");
|
||||
}
|
||||
}
|
||||
|
||||
public CoverArt SaveCoverArt(Song song)
|
||||
{
|
||||
|
||||
@@ -160,8 +160,10 @@ namespace Icarus.Controllers.Managers
|
||||
return successful;
|
||||
}
|
||||
|
||||
public void DeleteSong(Song song, SongRepository songStore, AlbumRepository albumStore,
|
||||
ArtistRepository artistStore, GenreRepository genreStore, YearRepository yearStore)
|
||||
public void DeleteSong(Song song, SongRepository songStore,
|
||||
AlbumRepository albumStore, ArtistRepository artistStore,
|
||||
GenreRepository genreStore, YearRepository yearStore,
|
||||
CoverArtRepository coverStore)
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -171,7 +173,12 @@ namespace Icarus.Controllers.Managers
|
||||
|
||||
throw new Exception("Failed to delete the song");
|
||||
}
|
||||
var coverMgr = new CoverArtManager(_config.GetValue<string>(
|
||||
"CoverArtPath"));
|
||||
var coverArt = coverStore.GetCoverArt(song);
|
||||
coverMgr.DeleteCoverArt(coverArt);
|
||||
|
||||
coverMgr.DeleteCoverArtFromDatabase(coverArt, coverStore);
|
||||
DeleteSongFromDatabase(song, songStore, albumStore, artistStore,
|
||||
genreStore, yearStore);
|
||||
}
|
||||
@@ -799,9 +806,7 @@ namespace Icarus.Controllers.Managers
|
||||
return false;
|
||||
}
|
||||
|
||||
var result = DoesSongExistOnFilesystem(song);
|
||||
|
||||
return result;
|
||||
return DoesSongExistOnFilesystem(song);
|
||||
}
|
||||
private bool DoesSongExistOnFilesystem(Song song)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user