mirror of
https://github.com/Cleanuparr/Cleanuparr.git
synced 2026-01-01 18:37:48 -05:00
53 lines
2.4 KiB
C#
53 lines
2.4 KiB
C#
using Cleanuparr.Application.Features.ContentBlocker;
|
|
using Cleanuparr.Application.Features.DownloadCleaner;
|
|
using Cleanuparr.Application.Features.QueueCleaner;
|
|
using Cleanuparr.Infrastructure.Events;
|
|
using Cleanuparr.Infrastructure.Features.Arr;
|
|
using Cleanuparr.Infrastructure.Features.ContentBlocker;
|
|
using Cleanuparr.Infrastructure.Features.DownloadClient;
|
|
using Cleanuparr.Infrastructure.Features.DownloadRemover;
|
|
using Cleanuparr.Infrastructure.Features.DownloadRemover.Interfaces;
|
|
using Cleanuparr.Infrastructure.Features.Files;
|
|
using Cleanuparr.Infrastructure.Features.ItemStriker;
|
|
using Cleanuparr.Infrastructure.Features.Security;
|
|
using Cleanuparr.Infrastructure.Interceptors;
|
|
using Cleanuparr.Infrastructure.Services;
|
|
using Cleanuparr.Persistence;
|
|
using Infrastructure.Interceptors;
|
|
using Infrastructure.Services.Interfaces;
|
|
using Infrastructure.Verticals.Files;
|
|
|
|
namespace Cleanuparr.Api.DependencyInjection;
|
|
|
|
public static class ServicesDI
|
|
{
|
|
public static IServiceCollection AddServices(this IServiceCollection services) =>
|
|
services
|
|
.AddSingleton<IEncryptionService, AesEncryptionService>()
|
|
.AddTransient<SensitiveDataJsonConverter>()
|
|
.AddTransient<EventsContext>()
|
|
.AddTransient<DataContext>()
|
|
.AddTransient<EventPublisher>()
|
|
.AddHostedService<EventCleanupService>()
|
|
// API services
|
|
.AddSingleton<IJobManagementService, JobManagementService>()
|
|
// Core services
|
|
.AddTransient<IDryRunInterceptor, DryRunInterceptor>()
|
|
.AddTransient<CertificateValidationService>()
|
|
.AddTransient<SonarrClient>()
|
|
.AddTransient<RadarrClient>()
|
|
.AddTransient<LidarrClient>()
|
|
.AddTransient<ArrClientFactory>()
|
|
.AddTransient<QueueCleaner>()
|
|
.AddTransient<ContentBlocker>()
|
|
.AddTransient<DownloadCleaner>()
|
|
.AddTransient<IQueueItemRemover, QueueItemRemover>()
|
|
.AddTransient<IFilenameEvaluator, FilenameEvaluator>()
|
|
.AddTransient<IHardLinkFileService, HardLinkFileService>()
|
|
.AddTransient<UnixHardLinkFileService>()
|
|
.AddTransient<WindowsHardLinkFileService>()
|
|
.AddTransient<ArrQueueIterator>()
|
|
.AddTransient<DownloadServiceFactory>()
|
|
.AddTransient<IStriker, Striker>()
|
|
.AddSingleton<BlocklistProvider>();
|
|
} |