public AzureEventSourcedRepository(
     IAzureEventStore eventStore,
     IAzureEventPublisher eventPublisher,
     Func <Guid, IEnumerable <IDomainEvent>, T> entityFactory)
 {
     _eventStore     = eventStore ?? throw new ArgumentNullException(nameof(eventStore));
     _eventPublisher = eventPublisher ?? throw new ArgumentNullException(nameof(eventPublisher));
     _entityFactory  = entityFactory ?? throw new ArgumentNullException(nameof(entityFactory));
 }
 public AzureEventSourcedRepository(
     IAzureEventStore eventStore,
     IAzureEventPublisher eventPublisher,
     IMementoStore mementoStore,
     Func <Guid, IEnumerable <IDomainEvent>, T> entityFactory,
     Func <Guid, IMemento, IEnumerable <IDomainEvent>, T> mementoEntityFactory)
     : this(eventStore, eventPublisher, entityFactory)
 {
     _mementoStore         = mementoStore ?? throw new ArgumentNullException(nameof(mementoStore));
     _mementoEntityFactory = mementoEntityFactory ?? throw new ArgumentNullException(nameof(mementoEntityFactory));
 }
        public static Task <IEnumerable <IDomainEvent> > LoadEvents <T>(
            this IAzureEventStore eventStore,
            Guid sourceId)
            where T : class, IEventSourced
        {
            if (eventStore == null)
            {
                throw new ArgumentNullException(nameof(eventStore));
            }

            return(eventStore.LoadEvents <T>(sourceId, default(int), CancellationToken.None));
        }
        public static Task SaveEvents <T>(
            this IAzureEventStore eventStore,
            IEnumerable <IDomainEvent> events)
            where T : class, IEventSourced
        {
            if (eventStore == null)
            {
                throw new ArgumentNullException(nameof(eventStore));
            }

            return(eventStore.SaveEvents <T>(events, null, CancellationToken.None));
        }
Ejemplo n.º 5
0
 public void TestInitialize()
 {
     fixture        = new Fixture().Customize(new AutoMoqCustomization());
     eventStore     = Mock.Of <IAzureEventStore>();
     eventPublisher = Mock.Of <IAzureEventPublisher>();
     mementoStore   = Mock.Of <IMementoStore>();
     sut            = new AzureEventSourcedRepository <FakeUser>(
         eventStore,
         eventPublisher,
         mementoStore,
         FakeUser.Factory,
         FakeUser.Factory);
 }