public RabbitMQEventBus(IServiceProvider provider, PersisterConnection connection)
        {
            IfHasNullThrowException(provider, connection);

            _provider   = provider;
            _connection = connection;

            _subscriptionManager = new SubscriptionManager();
            _subscriptionManager.OnEventRemoved += OnSubscriptionManagerEventRemoved;
            _subscriptionManager.OnEventAdded   += OnSubscriptionManagerEventAdded;

            _consumerChannel = CreateConsumerChannel();
        }
예제 #2
0
        public RabbitMQEventBus(
            PersisterConnection connection,
            IEventBusConfiguration eventBusConfiguration,
            IQueueConfiguration queueConfiguration,
            IAckConfiguration ackConfiguration
            )
        {
            _connection = connection;

            _eventBusConfiguration = eventBusConfiguration;

            _queueConfiguration = queueConfiguration;

            _ackConfiguration = ackConfiguration;

            _subscriptionManager = new SubscriptionsManager();
            _subscriptionManager.OnEventRemoved += OnSubscriptionManagerEventRemoved;
            _subscriptionManager.OnEventAdded   += OnSubscriptionManagerEventAdded;

            _eventCancellationTokenPool = new EventCancellationTokenPool(_subscriptionManager);

            _onSetRunner = new OnSetRunner(true);
        }
예제 #3
0
        public RabbitMQEventBus(
            PersisterConnection connection,
            ILogger logger,
            ILifetimeScope autofac,
            string exchangeName = "DefaultExchange"
            )
        {
            _connection = connection
                          ?? throw new ArgumentNullException(nameof(connection));

            _logger = logger;

            _autofac = autofac
                       ?? throw new ArgumentNullException(nameof(autofac));

            ExchangeName = exchangeName;

            _subscriptionManager = new SubscriptionsManager();
            _subscriptionManager.OnEventRemoved += OnSubscriptionManagerEventRemoved;
            _subscriptionManager.OnEventAdded   += OnSubscriptionManagerEventAdded;

            _consumerChannel = CreateConsumerChannel();
        }