using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using StellaOps.Notify.Storage.Mongo.Internal; using StellaOps.Notify.Storage.Mongo.Migrations; using StellaOps.Notify.Storage.Mongo.Options; using StellaOps.Notify.Storage.Mongo.Repositories; namespace StellaOps.Notify.Storage.Mongo; public static class ServiceCollectionExtensions { public static IServiceCollection AddNotifyMongoStorage(this IServiceCollection services, IConfiguration configuration) { ArgumentNullException.ThrowIfNull(services); ArgumentNullException.ThrowIfNull(configuration); services.Configure(configuration); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); services.AddSingleton(); return services; } }