public void RegisterServices(ICustomServiceCollection serviceCollection) { serviceCollection.AddSingleton <ISuperHumanMapper, SuperHumanMapper>(); serviceCollection.AddSingleton <IProofConfiguration, ProofConfiguration>(); serviceCollection.AddTransient <IManageSuperHuman, ManageSuperHuman>(); serviceCollection.AddTransient <ISuperHumanQueryServices, SuperHumanQueryServices>(); serviceCollection.AddTransient <ISearchStrategy, SearchHerosStrategy>(); serviceCollection.AddTransient <ISearchStrategy, SearchVilliansStrategy>(); serviceCollection.AddTransient <IManageSuperHumanRepository, ManageSuperHumanDB>(); serviceCollection.AddTransient <ISuperHumanQueryRepository, SuperHumanQueryDBRepository>(); serviceCollection.AddSingleton <ISubject, Subject>(); }
public override ICustomServiceCollection GetServiceCollection() { ICustomServiceCollection serviceCollection = null; switch (Providers.ReadModelPersistence) { case "InMemory": serviceCollection = new InMemoryReadModelPersistenceServices(); break; case "Postgres": serviceCollection = new PostgresReadModelPersistenceServices(Configuration); break; default: throw new ArgumentException($"Value {Providers.ReadModelPersistence} is not a supported read model persistence provider."); } return(serviceCollection); }
public override ICustomServiceCollection GetServiceCollection() { ICustomServiceCollection serviceCollection = null; switch (Providers.WriteModelPersistence) { case InMemory: serviceCollection = new InMemoryWriteModelPersistenceServices(); break; case MongoDb: serviceCollection = new MongoDbWriteModelPersistenceServices(Configuration); break; default: throw new ArgumentException($"Value {Providers.WriteModelPersistence} is not a supported write model persistence provider."); } return(serviceCollection); }
public override ICustomServiceCollection GetServiceCollection() { ICustomServiceCollection serviceCollection = null; switch (Providers.EventPublisher) { case "InMemory": serviceCollection = new InMemoryEventServices(); break; case "Kafka": serviceCollection = new KafkaEventServices(Configuration); break; default: throw new ArgumentException($"Value {Providers.EventPublisher} is not a supported event publisher."); } return(serviceCollection); }