Ejemplo n.º 1
0
        private void RegisterPublishers(IRabbitMqService rabbitMqService)
        {
            var publishExchanges = new List <string>
            {
                _settings.RabbitMqQueues.OrderHistory.ExchangeName,
                _settings.RabbitMqQueues.OrderbookPrices.ExchangeName,
                _settings.RabbitMqQueues.AccountMarginEvents.ExchangeName,
                _settings.RabbitMqQueues.AccountStats.ExchangeName,
                _settings.RabbitMqQueues.Trades.ExchangeName,
                _settings.RabbitMqQueues.PositionHistory.ExchangeName,
                _settings.RabbitMqQueues.ExternalOrder.ExchangeName,
            };

            var bytesSerializer = new BytesStringSerializer();

            foreach (var exchangeName in publishExchanges)
            {
                var settings = new RabbitMqSettings
                {
                    ConnectionString = _settings.MtRabbitMqConnString,
                    ExchangeName     = exchangeName
                };
                _publishers[exchangeName] = rabbitMqService.GetProducer(settings, bytesSerializer);
            }

            _publishers[_settings.RfqChangedRabbitMqSettings.ExchangeName] =
                rabbitMqService.GetProducer(_settings.RfqChangedRabbitMqSettings, bytesSerializer);
        }
Ejemplo n.º 2
0
 public void AlertStarted()
 {
     AlertRiskOfficer(null, "Market maker started", EventTypeEnum.StatusInfo);
     _rabbitMqService.GetProducer(_settings.Nested(s => s.RabbitMq.Publishers.Started), true,
                                  _rabbitMqService.GetJsonSerializer <StartedMessage>())
     .ProduceAsync(new StartedMessage());
 }
Ejemplo n.º 3
0
 public void AlertPrimaryExchangeSwitched(PrimaryExchangeSwitchedMessage message)
 {
     message.MarketMakerId = GetMarketMakerId();
     _rabbitMqService.GetProducer <PrimaryExchangeSwitchedMessage>(
         _settings.Nested(s => s.RabbitMq.Publishers.PrimaryExchangeSwitched), false, false)
     .ProduceAsync(message);
 }
 public void Start()
 {
     _eventsPublisher = _rabbitMqService.GetProducer(
         new RabbitMqSettings
     {
         ConnectionString = _marginSettings.MtRabbitMqConnString,
         ExchangeName     = _marginSettings.RabbitMqQueues.MarginTradingEnabledChanged.ExchangeName
     },
         _rabbitMqService.GetJsonSerializer <MarginTradingEnabledChangedMessage>());
 }
        public EventSender(
            IRabbitMqService rabbitMqService,
            IConvertService convertService,
            ILog log,
            ISystemClock systemClock,
            string settingsChangedConnectionString,
            string settingsChangedExchangeName)
        {
            _convertService = convertService;
            _log            = log;
            _systemClock    = systemClock;

            _settingsChangedMessageProducer =
                rabbitMqService.GetProducer(settingsChangedConnectionString, settingsChangedExchangeName, true,
                                            rabbitMqService.GetJsonSerializer <SettingsChangedEvent>());
        }
 private static IMessageProducer <ExternalExchangeOrderbookMessage> CreateRabbitMqMessageProducer(
     IReloadingManager <MarginTradingOrderbookAggregatorSettings> settings, IRabbitMqService rabbitMqService)
 {
     return(rabbitMqService.GetProducer(settings.Nested(s => s.RabbitMq.Publishers.Orderbooks), true,
                                        rabbitMqService.GetMsgPackSerializer <ExternalExchangeOrderbookMessage>()));
 }
Ejemplo n.º 7
0
 private static IMessageProducer <OrderCommandsBatchMessage> CreateRabbitMqMessageProducer(
     IReloadingManager <MarginTradingMarketMakerSettings> settings, IRabbitMqService rabbitMqService)
 {
     return(rabbitMqService.GetProducer <OrderCommandsBatchMessage>(
                settings.Nested(s => s.RabbitMq.Publishers.OrderCommands), false, false));
 }