public virtual void Initialize(IWarehouseStateCreated stateCreated)
        {
            var aggregateId = stateCreated.WarehouseEventId.WarehouseId;
            var state       = new WarehouseState();

            state.WarehouseId = aggregateId;
            var aggregate = (WarehouseAggregate)GetWarehouseAggregate(state);

            var eventStoreAggregateId = ToEventStoreAggregateId(aggregateId);

            aggregate.Apply(stateCreated);
            Persist(eventStoreAggregateId, aggregate, state);
        }
Beispiel #2
0
        public virtual WarehouseStateCreatedDto ToWarehouseStateCreatedDto(IWarehouseStateCreated e)
        {
            var dto = new WarehouseStateCreatedDto();

            dto.StateEventId = new WarehouseStateEventIdDtoWrapper(e.StateEventId);
            dto.CreatedAt    = e.CreatedAt;
            dto.CreatedBy    = e.CreatedBy;
            dto.CommandId    = e.CommandId;
            dto.Name         = e.Name;
            dto.Description  = e.Description;
            dto.IsInTransit  = e.IsInTransit;
            dto.Active       = e.Active;
            return(dto);
        }
Beispiel #3
0
        public virtual void When(IWarehouseStateCreated e)
        {
            ThrowOnWrongEvent(e);
            this.Name = e.Name;

            this.Description = e.Description;

            this.IsInTransit = (e.IsInTransit != null && e.IsInTransit.HasValue) ? e.IsInTransit.Value : default(bool);

            this.Active = (e.Active != null && e.Active.HasValue) ? e.Active.Value : default(bool);

            this.Deleted = false;

            this.CreatedBy = e.CreatedBy;
            this.CreatedAt = e.CreatedAt;
        }
Beispiel #4
0
        protected virtual IWarehouseStateCreated Map(ICreateWarehouse c)
        {
            var stateEventId         = new WarehouseEventId(c.WarehouseId, c.Version);
            IWarehouseStateCreated e = NewWarehouseStateCreated(stateEventId);

            e.WarehouseName = c.WarehouseName;
            e.Description   = c.Description;
            e.IsInTransit   = c.IsInTransit;
            e.Active        = c.Active;
            e.CommandId     = c.CommandId;


            e.CreatedBy = (string)c.RequesterId;
            e.CreatedAt = ApplicationContext.Current.TimestampService.Now <DateTime>();
            var version = c.Version;


            return(e);
        }
Beispiel #5
0
        protected virtual IWarehouseStateCreated Map(ICreateWarehouse c)
        {
            var stateEventId         = new WarehouseStateEventId(c.WarehouseId, c.Version);
            IWarehouseStateCreated e = NewWarehouseStateCreated(stateEventId);

            e.Name        = c.Name;
            e.Description = c.Description;
            e.IsInTransit = c.IsInTransit;
            e.Active      = c.Active;
            e.CommandId   = c.CommandId;


            e.CreatedBy = (string)c.RequesterId;
            e.CreatedAt = DateTime.Now;
            var version = c.Version;


            return(e);
        }
 void IWarehouseState.When(IWarehouseStateCreated e)
 {
     throw new NotSupportedException();
 }
Beispiel #7
0
        public virtual void Create(ICreateWarehouse c)
        {
            IWarehouseStateCreated e = Map(c);

            Apply(e);
        }