Beispiel #1
0
        public IInventoryItemRequirementEntryMvoState Get(InventoryItemRequirementEntryId id)
        {
            IInventoryItemRequirementEntryMvoState state = CurrentSession.Get <InventoryItemRequirementEntryMvoState>(id);

            if (ReadOnlyProxyGenerator != null && state != null)
            {
                return(ReadOnlyProxyGenerator.CreateProxy <IInventoryItemRequirementEntryMvoState>(state, new Type[] {  }, _readOnlyPropertyNames));
            }
            return(state);
        }
Beispiel #2
0
        public IInventoryItemRequirementEntryMvoState Get(InventoryItemRequirementEntryId id, bool nullAllowed)
        {
            IInventoryItemRequirementEntryMvoState state = CurrentSession.Get <InventoryItemRequirementEntryMvoState> (id);

            if (!nullAllowed && state == null)
            {
                state = new InventoryItemRequirementEntryMvoState();
                (state as InventoryItemRequirementEntryMvoState).InventoryItemRequirementEntryId = id;
            }
            if (ReadOnlyProxyGenerator != null && state != null)
            {
                return(ReadOnlyProxyGenerator.CreateProxy <IInventoryItemRequirementEntryMvoState>(state, new Type[] {  }, _readOnlyPropertyNames));
            }
            return(state);
        }
        public async Task <IInventoryItemRequirementEntryMvoState> GetAsync(InventoryItemRequirementEntryId inventoryItemRequirementEntryId)
        {
            IInventoryItemRequirementEntryMvoState state = null;
            var idObj         = InventoryItemRequirementEntryMvoProxyUtils.ToIdString(inventoryItemRequirementEntryId);
            var uriParameters = new InventoryItemRequirementEntryMvoUriParameters();

            uriParameters.Id = idObj;

            var req = new InventoryItemRequirementEntryMvoGetRequest(uriParameters);

            var resp = await _ramlClient.InventoryItemRequirementEntryMvo.Get(req);

            InventoryItemRequirementEntryMvoProxyUtils.ThrowOnHttpResponseError(resp);
            state = (resp.Content == null) ? null : resp.Content.ToInventoryItemRequirementEntryMvoState();
            return(state);
        }
Beispiel #4
0
        public void Save(IInventoryItemRequirementEntryMvoState state)
        {
            IInventoryItemRequirementEntryMvoState s = state;

            if (ReadOnlyProxyGenerator != null)
            {
                s = ReadOnlyProxyGenerator.GetTarget <IInventoryItemRequirementEntryMvoState>(state);
            }
            CurrentSession.SaveOrUpdate(s);

            var saveable = s as ISaveable;

            if (saveable != null)
            {
                saveable.Save();
            }
            CurrentSession.Flush();
        }
        public static TCreateInventoryItemRequirementEntryMvo ToCreateInventoryItemRequirementEntryMvo <TCreateInventoryItemRequirementEntryMvo>(this IInventoryItemRequirementEntryMvoState state)
            where TCreateInventoryItemRequirementEntryMvo : ICreateInventoryItemRequirementEntryMvo, new()
        {
            var cmd = new TCreateInventoryItemRequirementEntryMvo();

            cmd.InventoryItemRequirementVersion = ((IInventoryItemRequirementEntryMvoStateProperties)state).InventoryItemRequirementVersion;

            cmd.InventoryItemRequirementEntryId = state.InventoryItemRequirementEntryId;
            cmd.Quantity      = state.Quantity;
            cmd.SourceEventId = state.SourceEventId;
            cmd.Version       = ((IInventoryItemRequirementEntryMvoStateProperties)state).Version;
            cmd.InventoryItemRequirementQuantity  = state.InventoryItemRequirementQuantity;
            cmd.InventoryItemRequirementCreatedBy = state.InventoryItemRequirementCreatedBy;
            cmd.InventoryItemRequirementCreatedAt = state.InventoryItemRequirementCreatedAt;
            cmd.InventoryItemRequirementUpdatedBy = state.InventoryItemRequirementUpdatedBy;
            cmd.InventoryItemRequirementUpdatedAt = state.InventoryItemRequirementUpdatedAt;
            return(cmd);
        }
        public static TMergePatchInventoryItemRequirementEntryMvo ToMergePatchInventoryItemRequirementEntryMvo <TMergePatchInventoryItemRequirementEntryMvo>(this IInventoryItemRequirementEntryMvoState state)
            where TMergePatchInventoryItemRequirementEntryMvo : IMergePatchInventoryItemRequirementEntryMvo, new()
        {
            var cmd = new TMergePatchInventoryItemRequirementEntryMvo();

            cmd.InventoryItemRequirementVersion = ((IInventoryItemRequirementEntryMvoStateProperties)state).InventoryItemRequirementVersion;

            cmd.InventoryItemRequirementEntryId = state.InventoryItemRequirementEntryId;
            cmd.Quantity      = state.Quantity;
            cmd.SourceEventId = state.SourceEventId;
            cmd.Version       = ((IInventoryItemRequirementEntryMvoStateProperties)state).Version;
            cmd.InventoryItemRequirementQuantity  = state.InventoryItemRequirementQuantity;
            cmd.InventoryItemRequirementCreatedBy = state.InventoryItemRequirementCreatedBy;
            cmd.InventoryItemRequirementCreatedAt = state.InventoryItemRequirementCreatedAt;
            cmd.InventoryItemRequirementUpdatedBy = state.InventoryItemRequirementUpdatedBy;
            cmd.InventoryItemRequirementUpdatedAt = state.InventoryItemRequirementUpdatedAt;

            if (state.SourceEventId == null)
            {
                cmd.IsPropertySourceEventIdRemoved = true;
            }
            if (state.InventoryItemRequirementCreatedBy == null)
            {
                cmd.IsPropertyInventoryItemRequirementCreatedByRemoved = true;
            }
            if (state.InventoryItemRequirementUpdatedBy == null)
            {
                cmd.IsPropertyInventoryItemRequirementUpdatedByRemoved = true;
            }
            return(cmd);
        }
        public static TDeleteInventoryItemRequirementEntryMvo ToDeleteInventoryItemRequirementEntryMvo <TDeleteInventoryItemRequirementEntryMvo>(this IInventoryItemRequirementEntryMvoState state)
            where TDeleteInventoryItemRequirementEntryMvo : IDeleteInventoryItemRequirementEntryMvo, new()
        {
            var cmd = new TDeleteInventoryItemRequirementEntryMvo();

            cmd.InventoryItemRequirementEntryId = state.InventoryItemRequirementEntryId;
            cmd.InventoryItemRequirementVersion = ((IInventoryItemRequirementEntryMvoStateProperties)state).InventoryItemRequirementVersion;

            return(cmd);
        }
        public static IInventoryItemRequirementEntryMvoCommand ToCreateOrMergePatchInventoryItemRequirementEntryMvo <TCreateInventoryItemRequirementEntryMvo, TMergePatchInventoryItemRequirementEntryMvo>(this IInventoryItemRequirementEntryMvoState state)
            where TCreateInventoryItemRequirementEntryMvo : ICreateInventoryItemRequirementEntryMvo, new()
            where TMergePatchInventoryItemRequirementEntryMvo : IMergePatchInventoryItemRequirementEntryMvo, new()
        {
            bool bUnsaved = ((IInventoryItemRequirementEntryMvoState)state).IsUnsaved;

            if (bUnsaved)
            {
                return(state.ToCreateInventoryItemRequirementEntryMvo <TCreateInventoryItemRequirementEntryMvo>());
            }
            else
            {
                return(state.ToMergePatchInventoryItemRequirementEntryMvo <TMergePatchInventoryItemRequirementEntryMvo>());
            }
        }
 public override IInventoryItemRequirementEntryMvoAggregate GetInventoryItemRequirementEntryMvoAggregate(IInventoryItemRequirementEntryMvoState state)
 {
     return(new InventoryItemRequirementEntryMvoAggregate(state));
 }
Beispiel #10
0
 public InventoryItemRequirementEntryMvoAggregate(IInventoryItemRequirementEntryMvoState state)
 {
     _state = state;
 }
 public InventoryItemRequirementEntryMvoStateDtoWrapper(IInventoryItemRequirementEntryMvoState state)
 {
     this._state = state;
 }
 public InventoryItemRequirementEntryMvoStateDtoWrapper()
 {
     this._state = new InventoryItemRequirementEntryMvoState();
 }
        protected bool IsRepeatedCommand(IInventoryItemRequirementEntryMvoCommand command, IEventStoreAggregateId eventStoreAggregateId, IInventoryItemRequirementEntryMvoState state)
        {
            bool repeated = false;

            if (((IInventoryItemRequirementEntryMvoStateProperties)state).InventoryItemRequirementVersion > command.AggregateVersion)
            {
                var lastEvent = EventStore.GetEvent(typeof(IInventoryItemRequirementEntryMvoEvent), eventStoreAggregateId, command.AggregateVersion);
                if (lastEvent != null && lastEvent.CommandId == command.CommandId)
                {
                    repeated = true;
                }
            }
            return(repeated);
        }
 private void Persist(IEventStoreAggregateId eventStoreAggregateId, IInventoryItemRequirementEntryMvoAggregate aggregate, IInventoryItemRequirementEntryMvoState state)
 {
     EventStore.AppendEvents(eventStoreAggregateId, ((IInventoryItemRequirementEntryMvoStateProperties)state).InventoryItemRequirementVersion, aggregate.Changes, () => { StateRepository.Save(state); });
     if (AggregateEventListener != null)
     {
         AggregateEventListener.EventAppended(new AggregateEvent <IInventoryItemRequirementEntryMvoAggregate, IInventoryItemRequirementEntryMvoState>(aggregate, state, aggregate.Changes));
     }
 }
 public abstract IInventoryItemRequirementEntryMvoAggregate GetInventoryItemRequirementEntryMvoAggregate(IInventoryItemRequirementEntryMvoState state);