public Task <IInventoryServiceCompletedMessage> ReserveAsync(ActorSelection inventoryActorSelection, int reserveQuantity, string productId = "product1") { var request = new ReserveMessage(productId, reserveQuantity); if (DontUseActorSystem) { return(PerformOperation(request, Options.InitialInventory.ReserveAsync(TestInventoryStorage, request.ProductId, request.Update), TestInventoryStorage .ReadInventoryAsync(request.ProductId) .Result.Result)); } return(inventoryActor.Ask <IInventoryServiceCompletedMessage>(request, GENERAL_WAIT_TIME)); }
public Task <IInventoryServiceCompletedMessage> ReserveAsync(RealTimeInventory product, int reserveQuantity) { var request = new ReserveMessage(product.ProductId, reserveQuantity); if (DontUseActorSystem) { return(PerformOperation(request, product.ReserveAsync(TestInventoryStorage, request.ProductId, request.Update), TestInventoryStorage .ReadInventoryAsync(request.ProductId) .Result.Result)); } return(inventoryActor.Ask <IInventoryServiceCompletedMessage>(request, GENERAL_WAIT_TIME)); }