public void Bind(string exchangeName)
        {
            if (exchangeName == null)
            {
                throw new ArgumentNullException(nameof(exchangeName));
            }

            _exchangeBindings.AddRange(_settings.GetExchangeBindings(exchangeName));
        }
        public void Bind(string exchangeName, Action <IExchangeBindingConfigurator> callback)
        {
            if (exchangeName == null)
            {
                throw new ArgumentNullException(nameof(exchangeName));
            }
            if (callback == null)
            {
                throw new ArgumentNullException(nameof(callback));
            }

            var exchangeSettings = new RabbitMqReceiveSettings(_settings);

            callback(exchangeSettings);

            _exchangeBindings.AddRange(exchangeSettings.GetExchangeBindings(exchangeName));
        }
        public void Bind(string exchangeName, Action<IExchangeBindingConfigurator> callback)
        {
            if (exchangeName == null)
                throw new ArgumentNullException(nameof(exchangeName));
            if (callback == null)
                throw new ArgumentNullException(nameof(callback));

            var exchangeSettings = new RabbitMqReceiveSettings(_settings);

            callback(exchangeSettings);

            _exchangeBindings.AddRange(exchangeSettings.GetExchangeBindings(exchangeName));
        }