public async Task <GetApiProductQueryResult> Handle(GetApiProductQuery request, CancellationToken cancellationToken) { var result = await _apimApiService.GetAvailableProducts("Documentation"); var product = result.Products.FirstOrDefault(c => c.Name.Equals(request.ProductName, StringComparison.CurrentCultureIgnoreCase)); return(new GetApiProductQueryResult { Product = product }); }
public async Task <GetApiProductSubscriptionsQueryResult> Handle(GetApiProductSubscriptionsQuery request, CancellationToken cancellationToken) { var productsTask = _apimApiService.GetAvailableProducts(request.AccountType); var subscriptionsTask = _apimDeveloperApiClient.Get <GetApiProductSubscriptionsResponse>( new GetApiProductSubscriptionsRequest(request.AccountIdentifier)); await Task.WhenAll(productsTask, subscriptionsTask); return(new GetApiProductSubscriptionsQueryResult { Products = productsTask.Result.Products, Subscriptions = subscriptionsTask.Result.Subscriptions }); }