using Books.Api.EventFlow.ReadModels; using Books.Api.EventFlow.Repositories; using EventFlow; using EventFlow.Extensions; using EventFlow.PostgreSql.Extensions; using EventFlow.Sql.ReadModels; using ReadModelSqlGenerator = Books.Api.EventFlow.Customs.ReadModelSqlGenerator; namespace Books.Api.EventFlow.Extensions; public static class ReadModelRegistrationExtensions { public static IEventFlowOptions AddReadModels(this IEventFlowOptions options) { return options .UsePostgreSqlReadModel() .RegisterServices( sr => sr.AddSingleton(new ReadModelSqlGenerator())); } public static IServiceCollection AddRepositories(this IServiceCollection services) { // Register locators services.AddTransient(); // Register repositories services.AddScoped(); return services; } }