Ejemplo n.º 1
0
        public virtual async Task <IRepository> CreateRepositoryAsync(IEventPublisher eventPublisher)
        {
            var repo = new RepositoryLoggingDecorator(new Repository(
                                                          await CreateEventStorageProviderAsync().ConfigureAwait(false),
                                                          await CreateSnapshotStorageProviderAsync().ConfigureAwait(false),
                                                          eventPublisher));

            return(repo);
        }
Ejemplo n.º 2
0
        public virtual async Task <IRepository> CreateRepositoryAsync()
        {
            var readRepo = new ReadModelRepository();

            var repo = new RepositoryLoggingDecorator(
                new Repository(
                    await CreateEventStorageProviderAsync().ConfigureAwait(false),
                    await CreateSnapshotStorageProviderAsync().ConfigureAwait(false),
                    new DemoPublisher(
                        new DepositEventHandler(readRepo),
                        new WithdrawalEventHandler(readRepo))));

            return(repo);
        }