// GET: Stock/UpdateQuotations
        public IActionResult UpdateQuotations()
        {
            var model = new UpdateQuotationsViewModel
            {
                IsServiceAvailable = _quotationServiceClient.IsOnline(),
                Stocks             = Mapper.Map <IEnumerable <StockViewModel> >(_queryDispatcher.Execute(new StockAllQuery()))
            };

            return(View(model));
        }
示例#2
0
        /// <summary>
        /// Broadcasts the quotation service status by using an asynchronous loop.
        /// </summary>
        private void BroadcastQuotationServiceStatus()
        {
            Task.Factory.StartNew(async() =>
            {
                while (true)
                {
                    var isOnline = _quotationServiceClient.IsOnline();

                    //Only sent update to clients when something has changed
                    if (!_lastStatus.HasValue || _lastStatus.Value != isOnline)
                    {
                        _lastStatus = isOnline;
                        Clients.All.SendQuotationServiceStatus(isOnline);
                    }

                    await Task.Delay(10000);
                }
            }, TaskCreationOptions.LongRunning
                                  );
        }
 public IActionResult IsQuotationServiceOnline()
 {
     return(Json(_quotationServiceClient.IsOnline()));
 }
示例#4
0
 public JsonResult IsQuotationServiceOnline()
 {
     return(Json(_quotationServiceClient.IsOnline(), JsonRequestBehavior.AllowGet));
 }