예제 #1
0
        public async Task ExchangeDelete(string exchange, bool waitConfirmation)
        {
            ThrowIfRecoveryInProcess();

            var recovery = new ExchangeDeclaredRecovery(exchange, null);

            lock (_declaredExchanges) _declaredExchanges.Remove(recovery);

            await _channel.ExchangeDelete(exchange, waitConfirmation).ConfigureAwait(false);
        }
예제 #2
0
        public async Task ExchangeDeclare(string exchange, string type, bool durable, bool autoDelete, IDictionary <string, object> arguments, bool waitConfirmation)
        {
            ThrowIfRecoveryInProcess();

            await _channel.ExchangeDeclare(exchange, type, durable, autoDelete, arguments, waitConfirmation).ConfigureAwait(false);

            var recovery = new ExchangeDeclaredRecovery(exchange, type, durable, autoDelete, arguments);

            lock (_declaredExchanges) _declaredExchanges.Add(recovery);
        }
예제 #3
0
 protected bool Equals(ExchangeDeclaredRecovery other)
 {
     return(StringComparer.Ordinal.Equals(_exchange, other._exchange));
 }