public override async Task <object> Handle(Command cmd, CancellationToken cancellationToken) { var c = await _stocksService.GetCompanyProfile(cmd.Ticker); var a = await _stocksService.GetAdvancedStats(cmd.Ticker); var q = await _stocksService.Quote(cmd.Ticker); return(new RegisterPreview(c.Success, a.Success, q.Success)); }
public async Task <object> Handle(Query request, CancellationToken cancellationToken) { var profile = _stocksService2.GetCompanyProfile(request.Ticker); var advanced = _stocksService2.GetAdvancedStats(request.Ticker); var price = _stocksService2.GetPrice(request.Ticker); await Task.WhenAll(profile, advanced, price); return(new StockDetailsView { Ticker = request.Ticker, Price = price.Result.Success.Amount, Profile = profile.Result.Success, Stats = advanced.Result.Success }); }
public async Task <object> Handle(Query request, CancellationToken cancellationToken) { var profile = _stocksService2.GetCompanyProfile(request.Ticker); var advanced = _stocksService2.GetAdvancedStats(request.Ticker); var price = _stocksService2.GetPrice(request.Ticker); var data = _stocksService.GetHistoricalDataAsync(request.Ticker); var metrics = _stocksService.GetKeyMetrics(request.Ticker); await Task.WhenAll(profile, advanced, price, data, metrics); return(Mapper.MapStockDetail( request.Ticker, price.Result.Amount, profile.Result, advanced.Result, data.Result, metrics.Result)); }