private void PublishToKafka(PublishPortfolioStateToKafka cmd) { Monitor(); var portfolioSate = new PortfolioStateViewModel { AccountCount = _porfolioState.SupervizedAccounts.Count, AsOfDate = DateTime.Now, PortfolioName = Self.Path.Name }; var totalBillings = _porfolioState.SupervizedAccounts.Aggregate(0.0, (x, y) => x + y.Value.BalanceAfterLastTransaction); portfolioSate.TotalBalance = (decimal)totalBillings; var key = portfolioSate.PortfolioName; PortfolioStatePublisherActor.Tell(new Publish(key, portfolioSate)); _log.Debug($"Sending kafka message for portfolio {key}"); }
private void GetMyStatus() { Monitor(); _stopWatch = Stopwatch.StartNew(); _stopWatch.Start(); var portfolioSate = new PortfolioStateViewModel { AccountCount = _porfolioState.SupervizedAccounts.Count, AsOfDate = DateTime.Now, PortfolioName = Self.Path.Name, TotalBalance = _porfolioState.CurrentPortfolioBalance }; Sender.Tell(new TellMeYourPortfolioStatus( $"{_porfolioState.SupervizedAccounts.Count} accounts. " + $"I was last booted up on: {_porfolioState.LastBootedOn:yyyy-MM-dd h:mm tt}", portfolioSate)); _stopWatch.Stop(); ReportStopwatchInfo("GetMyStatus", _stopWatch.ElapsedMilliseconds); }
public TellMeYourPortfolioStatus(string message) { Message = message; PortfolioStateViewModel = new PortfolioStateViewModel(); }
public TellMeYourPortfolioStatus(string message, PortfolioStateViewModel portfolioStateViewModel) { Message = message; PortfolioStateViewModel = portfolioStateViewModel; }
public TellMeYourPortfolioStatus() { Message = ""; PortfolioStateViewModel = new PortfolioStateViewModel(); }