public void Delete(Guid userId) { var userDeletedEvent = new UserDeletedEvent(userId, Version); ApplyEvent(userDeletedEvent, Version + 1); UncommittedEvents.Add(userDeletedEvent); }
public void AddEvent(AccountDomainEvent domainEvent) { domainEvent.StreamId = Id; ApplyEvent(domainEvent); UncommittedEvents.Add(domainEvent); StreamVersion++; }
public void AddEvent(CreditCardDomainEvent domainEvent) { ApplyEvent(domainEvent); UncommittedEvents.Add(domainEvent); StreamVersion++; }
public void AddEvent(CardDomainEvent domainEvent) { ApplyEvent(domainEvent); UncommittedEvents.Add(domainEvent); Version++; }
public void VerifyEmailAddress(Guid userId) { var userVerifiedEvent = new UserVerifiedEvent( userId, Version, UserStatus.Verified); ApplyEvent(userVerifiedEvent, Version + 1); UncommittedEvents.Add(userVerifiedEvent); }
public void AddEvent(AccountDomainEvent domainEvent) { domainEvent.AggregateRootId = Id; ApplyEvent(domainEvent); UncommittedEvents.Add(domainEvent); Version++; }
protected void HandleEvent(Event @event) { @event.Id = Guid.NewGuid(); @event.SourceId = Id; @event.Created = DateTime.UtcNow; @event.Version = Version + 1; _handlers[@event.GetType()].Invoke(@event); Version = @event.Version; UncommittedEvents.Add(@event); }
public void UpdateEmailAddress(Guid userId, string emailAddress) { if (string.IsNullOrWhiteSpace(emailAddress)) { throw new ArgumentException(nameof(emailAddress)); } var userUpdatedEvent = new UserUpdatedEvent( userId, Version, emailAddress, UserStatus.VerificationPending); ApplyEvent(userUpdatedEvent, Version + 1); UncommittedEvents.Add(userUpdatedEvent); }
public User(Guid userId, string emailAddress) { if (userId == Guid.Empty) { throw new ArgumentException(nameof(userId)); } if (string.IsNullOrWhiteSpace(emailAddress)) { throw new ArgumentNullException(nameof(emailAddress)); } var userSubmittedEvent = new UserSubmittedEvent(userId, Version, emailAddress, string.Empty, UserStatus.VerificationPending, DateTime.UtcNow); ApplyEvent(userSubmittedEvent, Version + 1); UncommittedEvents.Add(userSubmittedEvent); }
public void AddEvent(InvoiceDomainEvent domainEvent) { ApplyEvent(domainEvent); UncommittedEvents.Add(domainEvent); StreamVersion++; }
protected void Apply(DomainEvent @event) { (this as dynamic).Handle((dynamic)@event); UncommittedEvents.Add(@event); }
protected void ApplyChange(DomainEvent domainEvent) { State.ApplyEvent(domainEvent); UncommittedEvents.Add(domainEvent); }
private void ApplyUncommittedEvent <TEvent>(TEvent @event) { UncommittedEvents.Add(@event); Apply(@event); }
private void Publish(IEvent e) { UncommittedEvents.Add(e); Apply(e); }