コード例 #1
0
        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>();
        }
コード例 #2
0
        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);
        }
コード例 #3
0
        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);
        }
コード例 #4
0
        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);
        }