public async Task Consume(ConsumeContext <ShipmentDeliveredEvent> context) { ShipmentDeliveredEvent shipmentDeliveredEvent = context.Message; long orderId = long.Parse(shipmentDeliveredEvent.CorrelationId); await _distributedLockManager.LockAsync(OrderOperationKey(orderId), async() => { IOrderStateMachine orderStateMachine = await _orderStateMachineFactory.BuildOrderStateMachineAsync(orderId); orderStateMachine.ChangeShipmentStatus(ShipmentStatuses.Delivered); } ); }
public virtual void HandleEvent(ShipmentDeliveredEvent eventData) { using (_unitOfWorkManager.Current.SetTenantId(null)) { } }
public OrderShipmentStatusTrackerData FindBy(ShipmentDeliveredEvent message) { return(FindByShipmentId(message.ShipmentId)); }
public void Handle(ShipmentDeliveredEvent @event) { Data.ShipmentId = @event.ShipmentId; Data.ShipmentReceived = true; CompleteIfPossible(); }