protected EventBasedAggregationRoot(TEntityId aggregateId, VersionId version, AggregationName name) { Name = name; AggregateId = aggregateId; Version = version; _currentStream = new List <IDomainEvent>(); _changes = new List <IDomainEvent>(); }
internal EventStreamBusinessEntityAggregateRoot(EventStream <EntityTestId> eventStream) : base(eventStream.AggregationId, eventStream.Version, AggregationName.From(nameof(EventStreamBusinessEntityAggregateRoot))) { if (eventStream.IsValid) { Apply(eventStream.Events); } AppendValidationResult(eventStream.Failures.ToImmutableList()); }
private EventStreamBusinessEntityAggregateRoot(EventStream <EntityTestId> eventStream) : base(eventStream.AggregationId, eventStream.Version, AggregationName.From(nameof(EventStreamBusinessEntityAggregateRoot))) { if (eventStream.ValidationResults.IsValid) { Apply(eventStream.Events); } ValidationResults = eventStream.ValidationResults; }
private EventStreamBusinessEntityAggregateRoot(EntityTestId aggregationId, Name name, Email email, Version version) : base(aggregationId, version, AggregationName.From(nameof(EventStreamBusinessEntityAggregateRoot))) { if (name.ValidationResults.IsValid && email.ValidationResults.IsValid) { var change = TestEntityAggregateAddedDomainEvent.From(aggregationId, name, email, version); Apply(change); // it is always new Raise(change); } ValidationResults = name.ValidationResults; }
internal EventStreamBusinessEntityAggregateRoot(Name name, Email email, VersionId version) : base(EntityTestId.GetNext(), version, AggregationName.From(nameof(EventStreamBusinessEntityAggregateRoot))) { if (name.ValidationStatus.IsValid && email.ValidationStatus.IsValid) { var change = TestEntityAggregateAddedDomainEvent.From(AggregateId, name, email, version); Apply(change); // it is always new Raise(change); } AppendValidationResult(name.ValidationStatus.Failures); AppendValidationResult(email.ValidationStatus.Failures); }