This commit is contained in:
2026-05-14 21:42:31 +02:00
parent 91ec85760e
commit 80f44422a0
11 changed files with 158 additions and 100 deletions
@@ -8,6 +8,8 @@ using Musify.Application.Events;
using Musify.Application.PlayLists.Commands;
using Musify.Application.PlayLists.Responses;
using Musify.Application.UploadIntents;
using Musify.Application.Extensions;
using Musify.Application.Abstractions.Application;
using Musify.Domain.Entities;
namespace Musify.Application.PlayLists.Handlers
@@ -15,6 +17,7 @@ namespace Musify.Application.PlayLists.Handlers
public class CreatePlayListCommandHandler(
IEventBus eventBus,
IDatabase database,
IUploadIntentService uploadIntentService,
IStorageService storageService,
ILogger<CreatePlayListCommandHandler> logger,
ApplicationStorageConfiguration storageConfiguration,
@@ -38,13 +41,13 @@ namespace Musify.Application.PlayLists.Handlers
if (request.PictureIntentId.HasValue)
{
var validation = await UploadIntentHelpers.ValidateAndLoadAsync(
database, storageService, uploadIntentConfiguration,
var validation = await uploadIntentService.ValidateAndLoadAsync(
uploadIntentConfiguration,
request.PictureIntentId.Value, request.UserId, cancellationToken);
if (!validation.IsSuccess)
return validation.Error!.Value;
return validation.As<UploadIntent, PlayListApplicationResponse>();
pictureIntent = validation.Intent!;
pictureIntent = validation.Value;
originalPictureName = pictureIntent.ObjectName;
var finalKey = playListConfiguration.Routes.BuildOriginalPicturePath(request.UserId, originalPictureName);
@@ -131,4 +134,4 @@ namespace Musify.Application.PlayLists.Handlers
}
}
}
}
}
@@ -3,6 +3,7 @@ using Mediator;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Logging;
using Musify.Application.Abstractions.Infrastructure;
using Musify.Application.Abstractions.Application;
using Musify.Application.Configuration;
using Musify.Application.PlayLists.Commands;
using Musify.Application.PlayLists.Responses;
@@ -13,6 +14,7 @@ namespace Musify.Application.PlayLists.Handlers
{
public class RequestPlayListPictureUploadCommandHandler(
IDatabase database,
IUploadIntentService uploadIntentService,
IStorageService storageService,
ILogger<RequestPlayListPictureUploadCommandHandler> logger,
ApplicationStorageConfiguration storageConfiguration,
@@ -57,8 +59,8 @@ namespace Musify.Application.PlayLists.Handlers
await using var transaction = await database.BeginTransactionAsync(
System.Data.IsolationLevel.Serializable, cancellationToken);
var quotaCheck = await UploadIntentHelpers.CheckQuotaAsync(
database, uploadIntentConfiguration, logger,
var quotaCheck = await uploadIntentService.CheckQuotaAsync(
uploadIntentConfiguration, logger,
request.UserId, effectiveSizeBytes, 1, cancellationToken);
if (!quotaCheck.IsSuccess)
return quotaCheck;
@@ -8,6 +8,8 @@ using Musify.Application.Events;
using Musify.Application.PlayLists.Commands;
using Musify.Application.PlayLists.Responses;
using Musify.Application.UploadIntents;
using Musify.Application.Extensions;
using Musify.Application.Abstractions.Application;
using Musify.Domain.Entities;
namespace Musify.Application.PlayLists.Handlers
@@ -15,6 +17,7 @@ namespace Musify.Application.PlayLists.Handlers
public class UpdatePlayListCommandHandler(
IEventBus eventBus,
IDatabase database,
IUploadIntentService uploadIntentService,
IStorageService storageService,
ILogger<UpdatePlayListCommandHandler> logger,
ApplicationStorageConfiguration storageConfiguration,
@@ -50,13 +53,13 @@ namespace Musify.Application.PlayLists.Handlers
if (request.NewPictureIntentId.HasValue)
{
var validation = await UploadIntentHelpers.ValidateAndLoadAsync(
database, storageService, uploadIntentConfiguration,
var validation = await uploadIntentService.ValidateAndLoadAsync(
uploadIntentConfiguration,
request.NewPictureIntentId.Value, request.UserId, cancellationToken);
if (!validation.IsSuccess)
return validation.Error!.Value;
return validation.As<UploadIntent, PlayListApplicationResponse>();
var intent = validation.Intent!;
var intent = validation.Value;
var finalKey = playListConfiguration.Routes.BuildOriginalPicturePath(request.UserId, intent.ObjectName);
try
{
@@ -121,4 +124,4 @@ namespace Musify.Application.PlayLists.Handlers
}
}
}
}
}