Experimental changes

This commit is contained in:
2026-03-29 17:15:39 +02:00
parent c6f919ee89
commit 697eed4e58
35 changed files with 279 additions and 445 deletions
@@ -1,40 +0,0 @@
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Options;
namespace Musify.Infrastructure.Configuration
{
public static class ConfigurationDependencyInjection
{
public static IServiceCollection AddInfrastructureConfigurations(this IServiceCollection serviceDescriptors, IConfiguration configuration)
{
serviceDescriptors
.AddValidatedConfiguration<DatabaseConfiguration>(configuration, DatabaseConfiguration.SectionName)
.AddValidatedConfiguration<KeycloakConfiguration>(configuration, KeycloakConfiguration.SectionName)
.AddValidatedConfiguration<InfrastructureStorageConfiguration>(configuration, InfrastructureStorageConfiguration.SectionName)
.AddValidatedConfiguration<MessagingConfiguration>(configuration, MessagingConfiguration.SectionName)
.AddValidatedConfiguration<OpenTelemetryConfiguration>(configuration, OpenTelemetryConfiguration.SectionName)
.AddValidatedConfiguration<AudioTranscoderConfiguration>(configuration, AudioTranscoderConfiguration.SectionName)
.AddValidatedConfiguration<WorkerConfiguration>(configuration, WorkerConfiguration.SectionName);
return serviceDescriptors;
}
static IServiceCollection AddValidatedConfiguration<TConfiguration>(
this IServiceCollection serviceDescriptors,
IConfiguration configuration,
string sectionName)
where TConfiguration : class
{
serviceDescriptors
.AddOptionsWithValidateOnStart<TConfiguration>()
.Bind(configuration.GetRequiredSection(sectionName))
.ValidateDataAnnotations();
serviceDescriptors.AddSingleton(serviceProvider =>
serviceProvider.GetRequiredService<IOptions<TConfiguration>>().Value);
return serviceDescriptors;
}
}
}
@@ -2,7 +2,7 @@ using System.ComponentModel.DataAnnotations;
namespace Musify.Infrastructure.Configuration
{
public class MessagingConfiguration
public class MassTransitConfiguration
{
public const string SectionName = "Messaging";