Esempio n. 1
0
        public TEntity ToEntity <TEntity>(IDomainFactory domainFactory)
            where TEntity : IQueryableEntity, new()
        {
            domainFactory.GuardAgainstNull(nameof(domainFactory));

            var properties = ConvertToDomainProperties(domainFactory);

            return(properties.FromObjectDictionary <TEntity>());
        }
Esempio n. 2
0
 public GeneralQueryStorage(ILogger logger, IDomainFactory domainFactory, IRepository repository)
 {
     logger.GuardAgainstNull(nameof(logger));
     repository.GuardAgainstNull(nameof(repository));
     domainFactory.GuardAgainstNull(nameof(domainFactory));
     this.logger        = logger;
     this.repository    = repository;
     this.domainFactory = domainFactory;
     this.containerName = typeof(TDto).GetEntityNameSafe();
 }
Esempio n. 3
0
        public TEntity ToDomainEntity <TEntity>(IDomainFactory domainFactory)
            where TEntity : IPersistableEntity
        {
            domainFactory.GuardAgainstNull(nameof(domainFactory));

            var domainProperties = ConvertToDomainProperties(domainFactory);
            var result           = domainFactory.RehydrateEntity(typeof(TEntity), domainProperties);

            return((TEntity)result);
        }
Esempio n. 4
0
        public PaymentStorage(ILogger logger, IDomainFactory domainFactory,
                              IEventStreamStorage <PaymentEntity> eventStreamStorage,
                              IRepository repository)
        {
            logger.GuardAgainstNull(nameof(logger));
            domainFactory.GuardAgainstNull(nameof(domainFactory));
            eventStreamStorage.GuardAgainstNull(nameof(eventStreamStorage));
            repository.GuardAgainstNull(nameof(repository));

            this.eventingStorage = eventStreamStorage;
        }
Esempio n. 5
0
 public GeneralCommandStorage(IRecorder recorder, IDomainFactory domainFactory,
                              IRepository repository)
 {
     recorder.GuardAgainstNull(nameof(recorder));
     domainFactory.GuardAgainstNull(nameof(domainFactory));
     repository.GuardAgainstNull(nameof(repository));
     this.recorder      = recorder;
     this.domainFactory = domainFactory;
     this.repository    = repository;
     this.containerName = typeof(TEntity).GetEntityNameSafe();
 }
 public ReadModelCheckpointStore(IRecorder recorder, IIdentifierFactory idFactory,
                                 IDomainFactory domainFactory, IRepository repository)
 {
     recorder.GuardAgainstNull(nameof(recorder));
     idFactory.GuardAgainstNull(nameof(idFactory));
     repository.GuardAgainstNull(nameof(repository));
     domainFactory.GuardAgainstNull(nameof(domainFactory));
     this.recorder      = recorder;
     this.idFactory     = idFactory;
     this.repository    = repository;
     this.domainFactory = domainFactory;
 }
 public GeneralEventStreamStorage(IRecorder recorder, IDomainFactory domainFactory,
                                  IChangeEventMigrator migrator, IRepository repository)
 {
     recorder.GuardAgainstNull(nameof(recorder));
     repository.GuardAgainstNull(nameof(repository));
     domainFactory.GuardAgainstNull(nameof(domainFactory));
     migrator.GuardAgainstNull(nameof(migrator));
     this.recorder      = recorder;
     this.repository    = repository;
     this.domainFactory = domainFactory;
     this.migrator      = migrator;
     this.containerName = typeof(TAggregateRoot).GetEntityNameSafe();
 }
Esempio n. 8
0
        public CarStorage(IRecorder recorder, IDomainFactory domainFactory,
                          IEventStreamStorage <CarEntity> eventStreamStorage,
                          IRepository repository)
        {
            recorder.GuardAgainstNull(nameof(recorder));
            domainFactory.GuardAgainstNull(nameof(domainFactory));
            eventStreamStorage.GuardAgainstNull(nameof(eventStreamStorage));
            repository.GuardAgainstNull(nameof(repository));

            this.carQueryStorage              = new GeneralQueryStorage <Car>(recorder, domainFactory, repository);
            this.carEventStreamStorage        = eventStreamStorage;
            this.unavailabilitiesQueryStorage =
                new GeneralQueryStorage <Unavailability>(recorder, domainFactory, repository);
        }
Esempio n. 9
0
        public ClinicStorage(ILogger logger, IDomainFactory domainFactory,
                             IEventStreamStorage <ClinicEntity> eventStreamStorage,
                             IRepository repository)
        {
            logger.GuardAgainstNull(nameof(logger));
            domainFactory.GuardAgainstNull(nameof(domainFactory));
            eventStreamStorage.GuardAgainstNull(nameof(eventStreamStorage));
            repository.GuardAgainstNull(nameof(repository));

            this.doctorQueryStorage           = new GeneralQueryStorage <Doctor>(logger, domainFactory, repository);
            this.clinicEventStreamStorage     = eventStreamStorage;
            this.unavailabilitiesQueryStorage =
                new GeneralQueryStorage <Unavailability>(logger, domainFactory, repository);
        }
Esempio n. 10
0
        public InProcessReadModelProjectionSubscription(ILogger logger, IIdentifierFactory idFactory,
                                                        IChangeEventMigrator migrator, IDomainFactory domainFactory, IRepository repository,
                                                        IEnumerable <IReadModelProjection> projections,
                                                        params IEventNotifyingStorage[] eventingStorages) : base(logger, eventingStorages)
        {
            logger.GuardAgainstNull(nameof(logger));
            idFactory.GuardAgainstNull(nameof(idFactory));
            migrator.GuardAgainstNull(nameof(migrator));
            domainFactory.GuardAgainstNull(nameof(domainFactory));
            repository.GuardAgainstNull(nameof(repository));
            projections.GuardAgainstNull(nameof(projections));
            var checkpointReadModel = new ReadModelCheckpointStore(logger, idFactory, domainFactory, repository);

            this.projector = new ReadModelProjector(logger, checkpointReadModel, migrator, projections?.ToArray());
        }