public IHttpActionResult DeliverOrder([FromBody] GuidModel model)
        {
            var cmd   = new DeliverOrder(model.OrderId);
            var order = _commandDispatcher.ExecuteCommand <OrderAggregate>(cmd);

            return(Ok(OrderModel.FromAggregate(order)));
        }
Example #2
0
        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);
        }
Example #8
0
 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)));
 }