public static string ToIdString(ShipmentItemIssuanceId id) { var formatter = (new ValueObjectTextFormatter <ShipmentItemIssuanceId>()); var idStr = formatter.ToString(id); return(idStr); }
public override EventStream LoadEventStream(Type eventType, IEventStoreAggregateId eventStoreAggregateId, long version) { Type supportedEventType = typeof(ItemIssuanceMvoEventBase); if (!eventType.IsAssignableFrom(supportedEventType)) { throw new NotSupportedException(); } ShipmentItemIssuanceId idObj = (ShipmentItemIssuanceId)(eventStoreAggregateId as EventStoreAggregateId).Id; var criteria = CurrentSession.CreateCriteria <ItemIssuanceMvoEventBase>(); criteria.Add(Restrictions.Eq("ItemIssuanceMvoEventId.ShipmentItemIssuanceIdShipmentId", idObj.ShipmentId)); criteria.Add(Restrictions.Eq("ItemIssuanceMvoEventId.ShipmentItemIssuanceIdItemIssuanceSeqId", idObj.ItemIssuanceSeqId)); criteria.Add(Restrictions.Le("ItemIssuanceMvoEventId.ShipmentVersion", version)); criteria.AddOrder(global::NHibernate.Criterion.Order.Asc("ItemIssuanceMvoEventId.ShipmentVersion")); var es = criteria.List <IEvent>(); foreach (ItemIssuanceMvoEventBase e in es) { e.EventReadOnly = true; } return(new EventStream() { SteamVersion = es.Count > 0 ? ((ItemIssuanceMvoEventBase)es.Last()).ItemIssuanceMvoEventId.ShipmentVersion : default(long), Events = es }); }
public IItemIssuanceMvoState Get(ShipmentItemIssuanceId id) { IItemIssuanceMvoState state = CurrentSession.Get <ItemIssuanceMvoState>(id); if (ReadOnlyProxyGenerator != null && state != null) { return(ReadOnlyProxyGenerator.CreateProxy <IItemIssuanceMvoState>(state, new Type[] { }, _readOnlyPropertyNames)); } return(state); }
public async Task <IItemIssuanceMvoState> GetHistoryStateAsync(ShipmentItemIssuanceId shipmentItemIssuanceId, long version) { var idObj = ItemIssuanceMvoProxyUtils.ToIdString(shipmentItemIssuanceId); var uriParameters = new ItemIssuanceMvoHistoryStateUriParameters(); uriParameters.Id = idObj; uriParameters.Version = version.ToString(); var req = new ItemIssuanceMvoHistoryStateGetRequest(uriParameters); var resp = await _ramlClient.ItemIssuanceMvoHistoryState.Get(req); ItemIssuanceMvoProxyUtils.ThrowOnHttpResponseError(resp); return((resp.Content == null) ? null : resp.Content.ToItemIssuanceMvoState()); }
public virtual IItemIssuanceMvoEvent GetEvent(ShipmentItemIssuanceId shipmentItemIssuanceId, long version) { var e = (IItemIssuanceMvoEvent)EventStore.GetEvent(ToEventStoreAggregateId(shipmentItemIssuanceId), version); if (e != null) { e.ReadOnly = true; } else if (version == -1) { return(GetEvent(shipmentItemIssuanceId, 0)); } return(e); }
public async Task <IItemIssuanceMvoEvent> GetStateEventAsync(ShipmentItemIssuanceId shipmentItemIssuanceId, long version) { var idObj = ItemIssuanceMvoProxyUtils.ToIdString(shipmentItemIssuanceId); var uriParameters = new ItemIssuanceMvoStateEventUriParameters(); uriParameters.Id = idObj; uriParameters.Version = version.ToString(); var req = new ItemIssuanceMvoStateEventGetRequest(uriParameters); var resp = await _ramlClient.ItemIssuanceMvoStateEvent.Get(req); ItemIssuanceMvoProxyUtils.ThrowOnHttpResponseError(resp); return(resp.Content); }
public IItemIssuanceState Get(ShipmentItemIssuanceId id, bool nullAllowed) { IItemIssuanceState state = CurrentSession.Get <ItemIssuanceState>(id); if (!nullAllowed && state == null) { state = new ItemIssuanceState(); (state as ItemIssuanceState).ShipmentItemIssuanceId = id; } if (ReadOnlyProxyGenerator != null && state != null) { return(ReadOnlyProxyGenerator.CreateProxy <IItemIssuanceState>(state, new Type[] { }, _readOnlyPropertyNames)); } return(state); }
public async Task <IItemIssuanceMvoState> GetAsync(ShipmentItemIssuanceId shipmentItemIssuanceId) { IItemIssuanceMvoState state = null; var idObj = ItemIssuanceMvoProxyUtils.ToIdString(shipmentItemIssuanceId); var uriParameters = new ItemIssuanceMvoUriParameters(); uriParameters.Id = idObj; var req = new ItemIssuanceMvoGetRequest(uriParameters); var resp = await _ramlClient.ItemIssuanceMvo.Get(req); ItemIssuanceMvoProxyUtils.ThrowOnHttpResponseError(resp); state = (resp.Content == null) ? null : resp.Content.ToItemIssuanceMvoState(); return(state); }
public virtual IItemIssuanceMvoState GetHistoryState(ShipmentItemIssuanceId shipmentItemIssuanceId, long version) { var eventStream = EventStore.LoadEventStream(typeof(IItemIssuanceMvoEvent), ToEventStoreAggregateId(shipmentItemIssuanceId), version - 1); return(new ItemIssuanceMvoState(eventStream.Events)); }
public ItemIssuanceMvoEventId(ShipmentItemIssuanceId shipmentItemIssuanceId, long shipmentVersion) { this._shipmentItemIssuanceId = shipmentItemIssuanceId; this._shipmentVersion = shipmentVersion; }
public virtual IItemIssuanceMvoState GetHistoryState(ShipmentItemIssuanceId shipmentItemIssuanceId, long version) { return(GetHistoryStateAsync(shipmentItemIssuanceId, version).GetAwaiter().GetResult()); }
public abstract IEventStoreAggregateId ToEventStoreAggregateId(ShipmentItemIssuanceId aggregateId);
public virtual IItemIssuanceState GetItemIssuance(string shipmentId, string itemIssuanceSeqId) { var entityId = new ShipmentItemIssuanceId(shipmentId, itemIssuanceSeqId); return(CurrentSession.Get <ItemIssuanceState>(entityId)); }
public IItemIssuanceMvoEvent GetEvent(ShipmentItemIssuanceId shipmentItemIssuanceId, long version) { return(GetStateEventAsync(shipmentItemIssuanceId, version).GetAwaiter().GetResult()); }
public override IEventStoreAggregateId ToEventStoreAggregateId(ShipmentItemIssuanceId aggregateId) { return(new EventStoreAggregateId(aggregateId)); }
public IItemIssuanceMvoState Get(ShipmentItemIssuanceId shipmentItemIssuanceId) { return(GetAsync(shipmentItemIssuanceId).GetAwaiter().GetResult()); }
public virtual IItemIssuanceMvoState Get(ShipmentItemIssuanceId shipmentItemIssuanceId) { var state = StateRepository.Get(shipmentItemIssuanceId, true); return(state); }