Example #1
0
            public Task <IAsyncEnumerable <EventBatch> > GetAll(IEventCriteria spec)
            {
                EventBatch[] events;
                lock (_store) {
                    events = All.ToArray();
                }

                return(Task.FromResult(events.ToAsyncEnumerable()));
            }
Example #2
0
            public Task <IAsyncEnumerable <RecordedEvent> > Get(IEventCriteria criteria)
            {
                RecordedEvent[] events;
                lock (_store) {
                    events = All.SelectMany(x => x.Events).ToArray();
                }

                // HACK: We do not consider criteria yet!
                return(Task.FromResult(events.ToAsyncEnumerable()));
            }
Example #3
0
        protected async Task <TState> Run(TState initialState, IContext context)
        {
            TState                 s        = initialState;
            IEventCriteria         criteria = _store.CreateCriteria(_ => { });
            IEventStoreTransaction tx       = context
                                              .Get <IServiceProvider>()
                                              .GetRequiredService <IEventStoreTransaction>();

            IAsyncEnumerable <RecordedEvent> events = await tx.Get(criteria);

            await events.ForEach(re => {
                Handle(s, re);
                return(Task.CompletedTask);
            });

            return(s);
        }
        public Task <IAsyncEnumerable <RecordedEvent> > Get(IEventCriteria criteria)
        {
            EventCriteria c = (EventCriteria)criteria;

            return(GetAll(c.Filter));
        }