Esempio n. 1
0
 private static void SendWithoutTransaction(TransportMessage transportMessage, IBusReceiver busReceiver)
 {
     using (var transaction = new TransactionScope(TransactionScopeOption.Suppress))
     {
         ChannelWrapper<IBusReceiver>.Execute(busReceiver, r => r.Receive(transportMessage));
         transaction.Complete();
     }
 }
Esempio n. 2
0
 private static void SendInAmbientOrNewTransaction(TransportMessage transportMessage, IBusReceiver busReceiver)
 {
     if (Transaction.Current == null)
     {
         using (var transaction = new TransactionScope(TransactionScopeOption.Required, BusSendTransactionOptions))
         {
             ChannelWrapper<IBusReceiver>.Execute(busReceiver, r => r.ReceiveInTransaction(transportMessage));
             transaction.Complete();
         }
     }
     else
     {
         // Use the existing ambient transaction.
         ChannelWrapper<IBusReceiver>.Execute(busReceiver, r => r.ReceiveInTransaction(transportMessage));
     }
 }
Esempio n. 3
0
        public TradingPersistenceService(
            IMasterTraderManager masterTraderManager,
            IOptions <TraderAccountConfiguration> traderAccount,
            IBusReceiver <ActiveAccountQueue, SetActiveAccountStatusItem> activeAccountBusReceiver,
            IFollowerManager followerManager,
            EventFlow.Queries.IQueryProcessor queryProcessor,
            ILogger <TradingPersistenceService> logger)
        {
            _masterTraderManager      = masterTraderManager;
            _activeAccountBusReceiver = activeAccountBusReceiver;

            _traderAccount   = traderAccount.Value;
            _followerManager = followerManager;
            _queryProcessor  = queryProcessor;
            _logger          = logger;
        }
Esempio n. 4
0
        public bool TryInit()
        {
            try
            {
                if (_config.Receiver != null)
                {
                    if (_receiver == null)
                    {
                        _receiver = new BusReceiver(_connection, _config.Receiver, _logger);
                    }

                    if (!_receiver.TryCreateChannel())
                    {
                        return(false);
                    }
                }

                if (_config.Producer != null)
                {
                    if (_producer == null)
                    {
                        _producer = new BusProducer(_connection, _config.Producer, _logger);
                    }

                    if (!_producer.TryCreateChannel())
                    {
                        return(false);
                    }
                }

                return(true);
            }
            catch (Exception e)
            {
                _logger?.LogError(e, $"{_connection.ServerInfo}.{typeof(BusQueue).FullName} : {e.Message}");
                return(false);
            }
        }
Esempio n. 5
0
        public BusClient(string connectionString)
        {
            var conn = new BusConnection(connectionString);

            _busReceiver = new BusReceiver(conn);
        }
Esempio n. 6
0
 public ConsumerHandler(IBusReceiver bus, IServiceProvider serviceProvider)
 {
     _bus             = bus;
     _serviceProvider = serviceProvider;
 }