public void SubscribeTo(IEventStore eventStore) { string date = DateTime.Today.ToString(DateTimeFormat); eventStore.SubscribeToStream($"gameLobby-{date}", @event => { var e = (CreateGameRequestApproved)@event.Event; var streamName = $"game-{e.GameId}"; var createStreamEvent = new CreateStreamEvent(streamName, StreamPositions.CreateNewStream, new GameCreated(e.GameId)); eventStore.Append(createStreamEvent); }); }
protected void Given(List <EventInStream> events, ITurnEventsIntoCommand worker) { _worker = worker; _worker.SubscribeTo(_eventStore); var eventInStreams = events.ToList(); foreach (var @event in eventInStreams) { var streamEvent = ToStreamEvent(@event); var createStreamEvent = new CreateStreamEvent(streamEvent.StreamName, streamEvent.StreamPosition, streamEvent.Event); _eventStore.Append(createStreamEvent); } }
protected void When(CreateStreamEvent @event) { _eventStore.Append(@event); }