public async Task SetMarginTradingEnabled(string clientId, bool enabled) { var settings = await _clientAccountClient.GetMarginEnabledAsync(clientId); if (_marginSettings.IsLive) { settings.EnabledLive = enabled; } else { settings.Enabled = enabled; } await _clientAccountClient.SetMarginEnabledAsync(clientId, settings.Enabled, settings.EnabledLive, settings.TermsOfUseAgreed); var marginEnabledChangedMessage = new MarginTradingEnabledChangedMessage { ClientId = clientId, EnabledDemo = settings.Enabled, EnabledLive = settings.EnabledLive }; _marginTradingSettingsCacheService.OnMarginTradingEnabledChanged(marginEnabledChangedMessage); await _eventsPublisher.ProduceAsync(marginEnabledChangedMessage); }
public void Start() { _rabbitMqService.Subscribe( _dataReaderSettings.Consumers.MarginTradingEnabledChanged, false, m => { _marginTradingSettingsCacheService.OnMarginTradingEnabledChanged(m); return(Task.CompletedTask); }, _rabbitMqService.GetJsonDeserializer <MarginTradingEnabledChangedMessage>()); }
public Task ProcessMarginTradingEnabledChanged(MarginTradingEnabledChangedMessage message) { _marginTradingSettingsCacheService.OnMarginTradingEnabledChanged(message); return(Task.CompletedTask); }