Files
knightcrawler/src/metadata/Extensions/ServiceCollectionExtensions.cs
purple_emily 79409915cf Run pre-commit
2024-03-08 14:34:53 +00:00

31 lines
904 B
C#

namespace Metadata.Extensions;
public static class ServiceCollectionExtensions
{
internal static IServiceCollection AddHttpClients(this IServiceCollection services)
{
services.AddHttpClient(HttpClients.ImdbDataClientName, client => client.BaseAddress = new(HttpClients.ImdbClientBaseAddress));
return services;
}
internal static IServiceCollection AddMongoDb(this IServiceCollection services)
{
services.LoadConfigurationFromEnv<MongoConfiguration>();
services.AddTransient<ImdbMongoDbService>();
return services;
}
internal static IServiceCollection AddJobSupport(this IServiceCollection services)
{
services.LoadConfigurationFromEnv<JobConfiguration>();
services.AddScheduler()
.AddTransient<DownloadImdbDataJob>()
.AddHostedService<JobScheduler>();
return services;
}
}