Ejemplo n.º 1
0
        public override AggregateApplicationResult ApplyEvent(BaseEvent evt)
        {
            if (evt == null)
            {
                throw new ArgumentNullException(nameof(evt));
            }

            switch (evt)
            {
            case ItemCreatedEvent created:
                Name = created.Name;
                this.TransactionalState = AggregateStates.Created;
                break;

            case ItemUpdatedEvent updated:
                Name = updated.Name;
                this.TransactionalState = AggregateStates.Updated;
                break;

            case ItemDeletedEvent deleted:
                this.TransactionalState = AggregateStates.Deleted;
                break;
            }

            return(base.ApplyEvent(evt));
        }
Ejemplo n.º 2
0
 public override void Commit()
 {
     base.Commit();
     this.TransactionalState = AggregateStates.NotChanged;
 }
Ejemplo n.º 3
0
 public override void Rollback()
 {
     base.Rollback();
     this.TransactionalState = AggregateStates.NotChanged;
 }
Ejemplo n.º 4
0
 public ItemAggregate(Guid id, BaseEvent lastEvent = null) : base(id, lastEvent)
 {
     this.TransactionalState = AggregateStates.NotChanged;
 }