Fix and missing service

This commit is contained in:
2026-03-29 18:59:50 +02:00
parent bc3736ce1b
commit dc039d8a3e
2 changed files with 34 additions and 10 deletions
@@ -1,25 +1,35 @@
using MassTransit; using MassTransit;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Options;
using Musify.Application.Contracts.Infrastructure;
using Musify.Infrastructure.Configuration; using Musify.Infrastructure.Configuration;
using Musify.Infrastructure.MassTransit.Activities.Audio;
using Musify.Infrastructure.MassTransit.Arguments;
using Musify.Infrastructure.MassTransit.Consumers;
using Musify.Infrastructure.MassTransit.Logs;
using Musify.Infrastructure.MassTransit.Activities; using Musify.Infrastructure.MassTransit.Activities;
using Musify.Infrastructure.MassTransit.Activities.Arguments; using Musify.Infrastructure.MassTransit.Activities.Arguments;
using Musify.Infrastructure.MassTransit.Activities.Logs; using Musify.Infrastructure.MassTransit.Activities.Audio;
using Musify.Infrastructure.MassTransit.Filters;
using Musify.Infrastructure.MassTransit.RoutingSlip.Builders;
using Musify.Infrastructure.MassTransit.Activities.Files; using Musify.Infrastructure.MassTransit.Activities.Files;
using Microsoft.Extensions.Configuration; using Musify.Infrastructure.MassTransit.Activities.Logs;
using Microsoft.Extensions.Options; using Musify.Infrastructure.MassTransit.Arguments;
using Musify.Infrastructure.MassTransit.Consumers;
using Musify.Infrastructure.MassTransit.Filters;
using Musify.Infrastructure.MassTransit.Logs;
using Musify.Infrastructure.MassTransit.RoutingSlip.Builders;
namespace Musify.Infrastructure.MassTransit namespace Musify.Infrastructure.MassTransit
{ {
public static class MassTransitDependencyInjection public static class MassTransitDependencyInjection
{ {
public static IServiceCollection AddMassTransitClient(this IServiceCollection serviceDescriptors) public static IServiceCollection AddMassTransitClient(this IServiceCollection serviceDescriptors, IConfiguration configuration)
{ {
serviceDescriptors
.AddOptionsWithValidateOnStart<MassTransitConfiguration>()
.Bind(configuration.GetRequiredSection(MassTransitConfiguration.SectionName))
.ValidateDataAnnotations();
serviceDescriptors.AddSingleton(serviceProvider =>
serviceProvider.GetRequiredService<IOptions<MassTransitConfiguration>>().Value);
serviceDescriptors.AddScoped<IEventBus, MassTransitEventBus>();
serviceDescriptors.AddMassTransit(options => serviceDescriptors.AddMassTransit(options =>
{ {
options.UsingRabbitMq((busRegistrationContext, busFactoryConfigurator) => options.UsingRabbitMq((busRegistrationContext, busFactoryConfigurator) =>
@@ -33,6 +43,14 @@ namespace Musify.Infrastructure.MassTransit
public static IServiceCollection AddMassTransitConsumers(this IServiceCollection serviceDescriptors, IConfiguration configuration) public static IServiceCollection AddMassTransitConsumers(this IServiceCollection serviceDescriptors, IConfiguration configuration)
{ {
serviceDescriptors
.AddOptionsWithValidateOnStart<MassTransitConfiguration>()
.Bind(configuration.GetRequiredSection(MassTransitConfiguration.SectionName))
.ValidateDataAnnotations();
serviceDescriptors.AddSingleton(serviceProvider =>
serviceProvider.GetRequiredService<IOptions<MassTransitConfiguration>>().Value);
serviceDescriptors serviceDescriptors
.AddOptionsWithValidateOnStart<WorkerConfiguration>() .AddOptionsWithValidateOnStart<WorkerConfiguration>()
.Bind(configuration.GetRequiredSection(WorkerConfiguration.SectionName)) .Bind(configuration.GetRequiredSection(WorkerConfiguration.SectionName))
@@ -23,5 +23,11 @@ namespace Musify.Infrastructure.Persistence
return serviceDescriptors; return serviceDescriptors;
} }
public static IServiceCollection AddProcessTrackingStore(this IServiceCollection serviceDescriptors)
{
serviceDescriptors.AddScoped<IProcessTrackingStore, ProcessTrackingStore>();
return serviceDescriptors;
}
} }
} }