fix: review remediation — _busy finally block, TrackNotFoundMessage const, null-safe error log
This commit is contained in:
@@ -251,7 +251,7 @@ public class TrackController : ControllerBase
|
|||||||
}
|
}
|
||||||
|
|
||||||
var error = result.Messages.FirstOrDefault()?.Message ?? "Unknown error";
|
var error = result.Messages.FirstOrDefault()?.Message ?? "Unknown error";
|
||||||
if (string.Equals(error, "Track not found.", StringComparison.Ordinal))
|
if (string.Equals(error, UnifiedTrackService.TrackNotFoundMessage, StringComparison.Ordinal))
|
||||||
{
|
{
|
||||||
return NotFound();
|
return NotFound();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ namespace DeepDrftContent.Services;
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public class UnifiedTrackService
|
public class UnifiedTrackService
|
||||||
{
|
{
|
||||||
|
internal const string TrackNotFoundMessage = "Track not found.";
|
||||||
private readonly ContentTrackService _contentTrackService;
|
private readonly ContentTrackService _contentTrackService;
|
||||||
private readonly ITrackService _sqlTrackService;
|
private readonly ITrackService _sqlTrackService;
|
||||||
private readonly FileDb _fileDatabase;
|
private readonly FileDb _fileDatabase;
|
||||||
@@ -89,7 +90,7 @@ public class UnifiedTrackService
|
|||||||
|
|
||||||
if (lookup.Value is null)
|
if (lookup.Value is null)
|
||||||
{
|
{
|
||||||
return Result.CreateFailResult("Track not found.");
|
return Result.CreateFailResult(TrackNotFoundMessage);
|
||||||
}
|
}
|
||||||
|
|
||||||
var entryKey = lookup.Value.EntryKey;
|
var entryKey = lookup.Value.EntryKey;
|
||||||
@@ -97,7 +98,7 @@ public class UnifiedTrackService
|
|||||||
var sqlDelete = await _sqlTrackService.Delete(id);
|
var sqlDelete = await _sqlTrackService.Delete(id);
|
||||||
if (!sqlDelete.Success)
|
if (!sqlDelete.Success)
|
||||||
{
|
{
|
||||||
var error = sqlDelete.Messages.FirstOrDefault()?.Message;
|
var error = sqlDelete.Messages.FirstOrDefault()?.Message ?? "unknown error";
|
||||||
_logger.LogError("DeleteAsync: SQL delete failed for track {TrackId}: {Error}", id, error);
|
_logger.LogError("DeleteAsync: SQL delete failed for track {TrackId}: {Error}", id, error);
|
||||||
return Result.CreateFailResult("Failed to delete track.");
|
return Result.CreateFailResult("Failed to delete track.");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -178,13 +178,15 @@
|
|||||||
{
|
{
|
||||||
var error = result.Messages.FirstOrDefault()?.Message ?? "Unknown error";
|
var error = result.Messages.FirstOrDefault()?.Message ?? "Unknown error";
|
||||||
Snackbar.Add($"Delete failed: {error}", Severity.Error);
|
Snackbar.Add($"Delete failed: {error}", Severity.Error);
|
||||||
_busy = false;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
Logger.LogError(ex, "Delete failed for track {TrackId}", Id);
|
Logger.LogError(ex, "Delete failed for track {TrackId}", Id);
|
||||||
Snackbar.Add("Delete failed — please try again.", Severity.Error);
|
Snackbar.Add("Delete failed — please try again.", Severity.Error);
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
_busy = false;
|
_busy = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user