public IHttpActionResult DeliverOrder([FromBody] GuidModel model) { var cmd = new DeliverOrder(model.OrderId); var order = _commandDispatcher.ExecuteCommand <OrderAggregate>(cmd); return(Ok(OrderModel.FromAggregate(order))); }
public Task Handle(DeliverOrder message, IMessageHandlerContext context) { log.Info($"@@@ DELIVERING ORDER: {message.OrderId} @@@"); log.Info($"Publishing: OrderDelivered for Order Id: {message.OrderId}"); return(context.Publish(new OrderDelivered { OrderId = message.OrderId })); }
internal void Deliver(DeliverOrder cmd) { if (State != OrderState.Shipped) { throw new InvalidOrderStateException(cmd.AggregateId, $"State should be {OrderState.Shipped} but is {State}"); } RaiseEvent(new OrderDelivered(cmd.AggregateId)); }
public async Task Should_Command_With_Result_Asynchronously() { var handler = new OrderHandler(); var deliver = new DeliverOrder { OrderId = 1 }; var tracking = await handler.CommandAsync <Guid>(deliver); Assert.AreNotEqual(Guid.Empty, tracking); Assert.AreEqual(1, deliver.OrderId); }
void LoadData(Int32 id) { InvokeMethodAsync( () => _orderService.GetDeliverOrderAsync(id), r => { this.DeliverOrder = r; SetFormState(null); }, ex => { GoBack(); }); }
public async Task Given() { message = new DeliverOrder { OrderId = Guid.NewGuid() }; var sut = new DeliverOrderHandler(); context = new TestableMessageHandlerContext(); await sut.Handle(message, context); }
public void When_DeliverOrder_OrderDelivered() { Given(InitialEvents); var command = new DeliverOrder(id); command.Metadata.CausationId = command.Metadata.CommandId; command.Metadata.CorrelationId = causationAndCorrelationId; When(command); var expectedEvent = new OrderDelivered(id); expectedEvent.Metadata.CausationId = command.Metadata.CommandId; expectedEvent.Metadata.CorrelationId = causationAndCorrelationId; expectedEvent.Metadata.ProcessId = command.Metadata.ProcessId; Then(expectedEvent); }
public void WhenIDeliverTheOrder() { var orderId = EventSourceHelper.GetId<Order>(); var cmd = new DeliverOrder(orderId); WhenHelper.When(cmd); }
public Promise <Guid> Deliver(DeliverOrder deliver) { return(new Promise <Guid>((resolve, reject) => resolve(Guid.NewGuid(), true))); }