Exemple #1
0
            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));
            }
Exemple #2
0
            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
                });
            }
Exemple #3
0
            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));
            }