public BasketServiceTest(CustomWebApplicationFactory factory) { var httpClient = factory.CreateClient(); var channel = GrpcChannel.ForAddress( httpClient.BaseAddress, new GrpcChannelOptions { HttpClient = httpClient }); GrpcClient = new Basket.BasketClient(channel); }
public async Task UpdateAsync(BasketData currentBasket) { await GrpcCallerService.CallService(_urls.GrpcBasket, async channel => { var client = new Basket.BasketClient(channel); _logger.LogDebug("Grpc update basket currentBasket {@currentBasket}", currentBasket); var request = MapToCustomerBasketRequest(currentBasket); _logger.LogDebug("Grpc update basket request {@request}", request); return(await client.UpdateBasketAsync(request)); }); }
public async Task <BasketData> GetById(string id) { return(await GrpcCallerService.CallService(_urls.GrpcBasket, async channel => { var client = new Basket.BasketClient(channel); _logger.LogDebug("grpc client created, request = {@id}", id); var response = await client.GetBasketByIdAsync(new BasketRequest { Id = id }); _logger.LogDebug("grpc response {@response}", response); return MapToBasketData(response); })); }
public async Task <BasketResponse> RemoveToBasket([Required] BasketRequest request) { if (!ModelState.IsValid) { throw new Exception("Invalid model"); } var response = await GrpcCallerService.CallService(urlGrpc : GRPCUrl.ProductService, logger : _logger, func : async channel => { var client = new Basket.BasketClient(channel); _logger.LogDebug("Grpc remove backet {@request}", request); return(await client.RemoveFromBasketAsync(request)); }); return(response); }
public BasketService(Basket.BasketClient basketClient, ILogger <BasketService> logger) { _basketClient = basketClient; _logger = logger; }
public GetBasketService(Basket.BasketClient basketClient, HttpClient httpClient) { _basketClient = basketClient; _httpClient = httpClient; }
public ClearBasketService(Basket.BasketClient basketClient) { _basketClient = basketClient; }
public BasketController(IServices services, Basket.BasketClient client) { _deadline = DateTime.UtcNow.AddMilliseconds(services.Basket.Timeout); _client = client; }