| Name | Message | Date |
|---|---|---|
| 📁 Jellyfin | 8 days ago | |
| 📄 Database.csproj | 9 days ago | |
| 📄 packages.lock.json | 8 days ago | |
| 📄 ServiceCollectionExtensions.cs | 8 days ago |
📄
src/Infrastructure/Database/ServiceCollectionExtensions.cs
using System; using Jellyfin.Database.Implementations; using Jellyfin.Database.Implementations.Locking; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; using Slopper.Domain; using Slopper.Infrastructure.Database.Jellyfin; namespace Slopper.Infrastructure.Database; public static class ServiceCollectionExtensions { public static IServiceCollection AddJellyfinDatabase(this IServiceCollection services) { services.AddSingleton<IJellyfinDatabaseProvider, JellyfinDatabaseProvider>(); services.AddSingleton<IEntityFrameworkCoreLockingBehavior, EntityFrameworkCoreLockingBehavior>(); services.AddDbContext<JellyfinDbContext>( (sp, options) => options.UseSqlite(sp.GetRequiredService<IConfiguration>().GetConnectionString("jellyfin")) ); services.TryAddSingleton(Random.Shared); services.AddTransient<IMediaRepository, MediaRepository>(); return services; } }