Esempio n. 1
0
        /// <summary>
        /// Deletes the exchange.
        /// </summary>
        /// <param name="exchangeName">Name of the exchange.</param>
        /// <param name="configAction">The configuration action.</param>
        /// <returns></returns>
        public virtual IFluentRabbit DeleteExchange(string exchangeName, Action <DeleteExchangeConfig> configAction = null)
        {
            return(TryCatch_Trace(MethodBase.GetCurrentMethod(),
                                  () =>
            {
                var config = new DeleteExchangeConfig();
                configAction?.Invoke(config);

                DeleteExchange(exchangeName, config);
            }));
        }
Esempio n. 2
0
        /// <summary>
        /// Deletes the exchange.
        /// </summary>
        /// <param name="exchangeName">Name of the exchange.</param>
        /// <param name="config">The configuration.</param>
        /// <returns></returns>
        public virtual IFluentRabbit DeleteExchange(string exchangeName, DeleteExchangeConfig config)
        {
            return(TryCatch_Trace(MethodBase.GetCurrentMethod(),
                                  () =>
            {
                //validation
                config.ThrowExceptionIfNull <ArgumentNullException>(nameof(config));
                RabbitMqClient.Model.ThrowExceptionIfNull <ModelIsNullException>();

                //execution
                RabbitMqClient.Model.ExchangeDelete(exchangeName, config.IfUnused);
            }));
        }