Esempio n. 1
0
        public static Props CreateProps(IEventStoreReader reader, IPersistedEventFactory factory)
        {
            Argument.RequiresNotNull(reader, nameof(reader));
            Argument.RequiresNotNull(factory, nameof(factory));

            return(Props.Create <ReadStreamWorker>(reader, factory));
        }
Esempio n. 2
0
        public EventStoreReader(IEventStore store, IPersistedEventFactory factory, GlobalOptions options)
        {
            _readProps                      = ReadWorker.CreateProps(store, factory);
            _readStreamProps                = ReadStreamWorker.CreateProps(store, factory);
            _readIndexedProjectionProps     = ReadIndexedProjectionStreamWorker.CreateProps(store, factory);
            _readProjectionCheckpointProps  = ReadProjectionCheckpointWorker.CreateProps(store);
            _readHighestGlobalSequenceProps = ReadHighestGlobalSequenceWorker.CreateProps(store);

            Ready();
        }
Esempio n. 3
0
        public EventStoreReader(IEventStore store, IPersistedEventFactory factory, GlobalOptions options)
        {
            _readProps = ReadWorker.CreateProps(store, factory);
            _readStreamProps = ReadStreamWorker.CreateProps(store, factory);
            _readIndexedProjectionProps = ReadIndexedProjectionStreamWorker.CreateProps(store, factory);
            _readProjectionCheckpointProps = ReadProjectionCheckpointWorker.CreateProps(store);
            _readHighestGlobalSequenceProps = ReadHighestGlobalSequenceWorker.CreateProps(store);

            Ready();
        }
Esempio n. 4
0
 public ReadWorker(IEventStoreReader reader, IPersistedEventFactory factory)
 {
     ReceiveRequest <ReadRequest>((req, sender, ct) =>
     {
         return(reader.ReadAsync(req.InitialGlobalSequence, req.Count, e =>
         {
             var loadedEvent = factory.CreateEvent(e);
             sender.Tell(new ReadResponse(req.RequestID, loadedEvent), ActorRefs.NoSender);
         }, ct));
     });
 }
Esempio n. 5
0
        public ReadStreamWorker(IEventStoreReader reader, IPersistedEventFactory factory)
        {
            ReceiveRequest <ReadStreamRequest>((req, sender, ct) =>
            {
                var sequence = req.InitialSequence;

                return(reader.ReadStreamAsync(req.Stream, req.InitialSequence, req.Count, e =>
                {
                    var loadedEvent = factory.CreateStreamEvent(e, sequence++);
                    sender.Tell(new ReadStreamResponse(req.RequestID, loadedEvent), ActorRefs.NoSender);
                }, ct));
            });
        }
Esempio n. 6
0
        public ReadIndexedProjectionStreamWorker(IProjectionStoreReader reader, IPersistedEventFactory factory)
        {
            ReceiveRequest <ReadIndexedProjectionStreamRequest>(async(req, sender, ct) =>
            {
                var checkpoint     = await reader.ReadProjectionCheckpointAsync(req.ProjectionStream);
                var sequence       = req.InitialSequence;
                var globalSequence = 0L;

                await reader.ReadIndexedProjectionStreamAsync(req.ProjectionStream, req.InitialSequence, req.Count, e =>
                {
                    globalSequence  = e.GlobalSequence;
                    var loadedEvent = factory.CreateStreamEvent(e, sequence++);
                    sender.Tell(new ReadIndexedProjectionStreamResponse(req.RequestID, loadedEvent), ActorRefs.NoSender);
                }, ct);

                _lastSeenGlobalCheckpoint = Math.Max(checkpoint, globalSequence);
            });
        }
Esempio n. 7
0
 public static Props CreateProps(IEventStore store, IPersistedEventFactory factory, GlobalOptions options)
 {
     return(Props.Create <EventStoreReader>(store, factory, options));
 }
Esempio n. 8
0
 public static Props CreateProps(IEventStore store, IPersistedEventFactory factory, GlobalOptions options)
 {
     return Props.Create<EventStoreReader>(store, factory, options);
 }