Exemplo n.º 1
0
        public static string ToIdString(MovementLineId id)
        {
            var formatter = (new ValueObjectTextFormatter <MovementLineId>());
            var idStr     = formatter.ToString(id);

            return(idStr);
        }
        public override EventStream LoadEventStream(Type eventType, IEventStoreAggregateId eventStoreAggregateId, long version)
        {
            Type supportedEventType = typeof(MovementLineMvoEventBase);

            if (!eventType.IsAssignableFrom(supportedEventType))
            {
                throw new NotSupportedException();
            }
            MovementLineId idObj    = (MovementLineId)(eventStoreAggregateId as EventStoreAggregateId).Id;
            var            criteria = CurrentSession.CreateCriteria <MovementLineMvoEventBase>();

            criteria.Add(Restrictions.Eq("MovementLineMvoEventId.MovementLineIdMovementDocumentNumber", idObj.MovementDocumentNumber));
            criteria.Add(Restrictions.Eq("MovementLineMvoEventId.MovementLineIdLineNumber", idObj.LineNumber));
            criteria.Add(Restrictions.Le("MovementLineMvoEventId.MovementVersion", version));
            criteria.AddOrder(global::NHibernate.Criterion.Order.Asc("MovementLineMvoEventId.MovementVersion"));
            var es = criteria.List <IEvent>();

            foreach (MovementLineMvoEventBase e in es)
            {
                e.EventReadOnly = true;
            }
            return(new EventStream()
            {
                SteamVersion = es.Count > 0 ? ((MovementLineMvoEventBase)es.Last()).MovementLineMvoEventId.MovementVersion : default(long),
                Events = es
            });
        }
        public IMovementLineMvoState Get(MovementLineId id)
        {
            IMovementLineMvoState state = CurrentSession.Get <MovementLineMvoState>(id);

            if (ReadOnlyProxyGenerator != null && state != null)
            {
                return(ReadOnlyProxyGenerator.CreateProxy <IMovementLineMvoState>(state, new Type[] {  }, _readOnlyPropertyNames));
            }
            return(state);
        }
Exemplo n.º 4
0
        public async Task <IMovementLineMvoState> GetHistoryStateAsync(MovementLineId movementLineId, long version)
        {
            var idObj         = MovementLineMvoProxyUtils.ToIdString(movementLineId);
            var uriParameters = new MovementLineMvoHistoryStateUriParameters();

            uriParameters.Id      = idObj;
            uriParameters.Version = version.ToString();

            var req  = new MovementLineMvoHistoryStateGetRequest(uriParameters);
            var resp = await _ramlClient.MovementLineMvoHistoryState.Get(req);

            MovementLineMvoProxyUtils.ThrowOnHttpResponseError(resp);
            return((resp.Content == null) ? null : resp.Content.ToMovementLineMvoState());
        }
        public virtual IMovementLineMvoEvent GetEvent(MovementLineId movementLineId, long version)
        {
            var e = (IMovementLineMvoEvent)EventStore.GetEvent(ToEventStoreAggregateId(movementLineId), version);

            if (e != null)
            {
                e.ReadOnly = true;
            }
            else if (version == -1)
            {
                return(GetEvent(movementLineId, 0));
            }
            return(e);
        }
Exemplo n.º 6
0
        public async Task <IMovementLineMvoEvent> GetStateEventAsync(MovementLineId movementLineId, long version)
        {
            var idObj         = MovementLineMvoProxyUtils.ToIdString(movementLineId);
            var uriParameters = new MovementLineMvoStateEventUriParameters();

            uriParameters.Id      = idObj;
            uriParameters.Version = version.ToString();

            var req  = new MovementLineMvoStateEventGetRequest(uriParameters);
            var resp = await _ramlClient.MovementLineMvoStateEvent.Get(req);

            MovementLineMvoProxyUtils.ThrowOnHttpResponseError(resp);
            return(resp.Content);
        }
        public IMovementLineMvoState Get(MovementLineId id, bool nullAllowed)
        {
            IMovementLineMvoState state = CurrentSession.Get <MovementLineMvoState> (id);

            if (!nullAllowed && state == null)
            {
                state = new MovementLineMvoState();
                (state as MovementLineMvoState).MovementLineId = id;
            }
            if (ReadOnlyProxyGenerator != null && state != null)
            {
                return(ReadOnlyProxyGenerator.CreateProxy <IMovementLineMvoState>(state, new Type[] {  }, _readOnlyPropertyNames));
            }
            return(state);
        }
Exemplo n.º 8
0
        public async Task <IMovementLineMvoState> GetAsync(MovementLineId movementLineId)
        {
            IMovementLineMvoState state = null;
            var idObj         = MovementLineMvoProxyUtils.ToIdString(movementLineId);
            var uriParameters = new MovementLineMvoUriParameters();

            uriParameters.Id = idObj;

            var req = new MovementLineMvoGetRequest(uriParameters);

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

            MovementLineMvoProxyUtils.ThrowOnHttpResponseError(resp);
            state = (resp.Content == null) ? null : resp.Content.ToMovementLineMvoState();
            return(state);
        }
Exemplo n.º 9
0
 public MovementLineMvoEventId(MovementLineId movementLineId, long movementVersion)
 {
     this._movementLineId  = movementLineId;
     this._movementVersion = movementVersion;
 }
        public virtual IMovementLineState GetMovementLine(string movementDocumentNumber, string lineNumber)
        {
            var entityId = new MovementLineId(movementDocumentNumber, lineNumber);

            return(CurrentSession.Get <MovementLineState>(entityId));
        }
Exemplo n.º 11
0
 public virtual IMovementLineMvoState GetHistoryState(MovementLineId movementLineId, long version)
 {
     return(GetHistoryStateAsync(movementLineId, version).GetAwaiter().GetResult());
 }
Exemplo n.º 12
0
 public IMovementLineMvoState Get(MovementLineId movementLineId)
 {
     return(GetAsync(movementLineId).GetAwaiter().GetResult());
 }
 public abstract IEventStoreAggregateId ToEventStoreAggregateId(MovementLineId aggregateId);
        public virtual IMovementLineMvoState GetHistoryState(MovementLineId movementLineId, long version)
        {
            var eventStream = EventStore.LoadEventStream(typeof(IMovementLineMvoEvent), ToEventStoreAggregateId(movementLineId), version - 1);

            return(new MovementLineMvoState(eventStream.Events));
        }
 public override IEventStoreAggregateId ToEventStoreAggregateId(MovementLineId aggregateId)
 {
     return(new EventStoreAggregateId(aggregateId));
 }
Exemplo n.º 16
0
 public IMovementLineMvoEvent GetEvent(MovementLineId movementLineId, long version)
 {
     return(GetStateEventAsync(movementLineId, version).GetAwaiter().GetResult());
 }
        public virtual IMovementLineMvoState Get(MovementLineId movementLineId)
        {
            var state = StateRepository.Get(movementLineId, true);

            return(state);
        }