public static TDeleteMovementType ToDeleteMovementType <TDeleteMovementType>(this IMovementTypeState state)
            where TDeleteMovementType : IDeleteMovementType, new()
        {
            var cmd = new TDeleteMovementType();

            cmd.MovementTypeId = state.MovementTypeId;
            cmd.Version        = ((IMovementTypeStateProperties)state).Version;

            return(cmd);
        }
        public IMovementTypeState Get(string id, bool nullAllowed)
        {
            IMovementTypeState state = CurrentSession.Get <MovementTypeState> (id);

            if (!nullAllowed && state == null)
            {
                state = new MovementTypeState();
                (state as MovementTypeState).MovementTypeId = id;
            }
            return(state);
        }
        public static TCreateMovementType ToCreateMovementType <TCreateMovementType>(this IMovementTypeState state)
            where TCreateMovementType : ICreateMovementType, new()
        {
            var cmd = new TCreateMovementType();

            cmd.Version = ((IMovementTypeStateProperties)state).Version;

            cmd.MovementTypeId = state.MovementTypeId;
            cmd.Description    = state.Description;
            cmd.Active         = ((IMovementTypeStateProperties)state).Active;
            return(cmd);
        }
        public void Save(IMovementTypeState state)
        {
            IMovementTypeState s = state;

            CurrentSession.SaveOrUpdate(s);

            var saveable = s as ISaveable;

            if (saveable != null)
            {
                saveable.Save();
            }
            CurrentSession.Flush();
        }
예제 #5
0
        public async Task <IMovementTypeState> GetAsync(string movementTypeId)
        {
            IMovementTypeState state = null;
            var idObj         = movementTypeId;
            var uriParameters = new MovementTypeUriParameters();

            uriParameters.Id = idObj;

            var req = new MovementTypeGetRequest(uriParameters);

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

            MovementTypeProxyUtils.ThrowOnHttpResponseError(resp);
            state = (resp.Content == null) ? null : resp.Content.ToMovementTypeState();
            return(state);
        }
        public IMovementTypeState Get(string id)
        {
            IMovementTypeState state = CurrentSession.Get <MovementTypeState>(id);

            return(state);
        }
예제 #7
0
 public MovementTypeStateDtoWrapper(IMovementTypeState state)
 {
     this._state = state;
 }
예제 #8
0
 public MovementTypeStateDtoWrapper()
 {
     this._state = new MovementTypeState();
 }
 public override IMovementTypeAggregate GetMovementTypeAggregate(IMovementTypeState state)
 {
     return(new MovementTypeAggregate(state));
 }
예제 #10
0
 public MovementTypeAggregate(IMovementTypeState state)
 {
     _state = state;
 }
        public static TMergePatchMovementType ToMergePatchMovementType <TMergePatchMovementType>(this IMovementTypeState state)
            where TMergePatchMovementType : IMergePatchMovementType, new()
        {
            var cmd = new TMergePatchMovementType();

            cmd.Version = ((IMovementTypeStateProperties)state).Version;

            cmd.MovementTypeId = state.MovementTypeId;
            cmd.Description    = state.Description;
            cmd.Active         = ((IMovementTypeStateProperties)state).Active;

            if (state.Description == null)
            {
                cmd.IsPropertyDescriptionRemoved = true;
            }
            return(cmd);
        }
        public static IMovementTypeCommand ToCreateOrMergePatchMovementType <TCreateMovementType, TMergePatchMovementType>(this IMovementTypeState state)
            where TCreateMovementType : ICreateMovementType, new()
            where TMergePatchMovementType : IMergePatchMovementType, new()
        {
            bool bUnsaved = ((IMovementTypeState)state).IsUnsaved;

            if (bUnsaved)
            {
                return(state.ToCreateMovementType <TCreateMovementType>());
            }
            else
            {
                return(state.ToMergePatchMovementType <TMergePatchMovementType>());
            }
        }
        protected bool IsRepeatedCommand(IMovementTypeCommand command, IEventStoreAggregateId eventStoreAggregateId, IMovementTypeState state)
        {
            bool repeated = false;

            if (((IMovementTypeStateProperties)state).Version == command.AggregateVersion + 1)
            {
                if (state.CommandId == command.CommandId)
                {
                    repeated = true;
                }
            }
            return(repeated);
        }
 private void Persist(IEventStoreAggregateId eventStoreAggregateId, IMovementTypeAggregate aggregate, IMovementTypeState state)
 {
     StateRepository.Save(state);
     if (AggregateEventListener != null)
     {
         AggregateEventListener.EventAppended(new AggregateEvent <IMovementTypeAggregate, IMovementTypeState>(aggregate, state, aggregate.Changes));
     }
 }
 public abstract IMovementTypeAggregate GetMovementTypeAggregate(IMovementTypeState state);