예제 #1
0
        /// <summary>
        /// Constructs the retry strategy with the given settings, creating an error queue with the configured name if necessary
        /// </summary>
        public SimpleRetryStrategy(ITransport transport, SimpleRetryStrategySettings simpleRetryStrategySettings)
        {
            _transport = transport;
            _simpleRetryStrategySettings = simpleRetryStrategySettings;

            var errorQueueAddress = _simpleRetryStrategySettings.ErrorQueueAddress;

            _transport.CreateQueue(errorQueueAddress);
        }
예제 #2
0
        /// <summary>
        /// Constructs the retry strategy with the given settings, creating an error queue with the configured name if necessary
        /// </summary>
        public SimpleRetryStrategy(ITransport transport, SimpleRetryStrategySettings simpleRetryStrategySettings)
        {
            _transport = transport;
            _simpleRetryStrategySettings = simpleRetryStrategySettings;

            var errorQueueAddress = _simpleRetryStrategySettings.ErrorQueueAddress;
            
            _transport.CreateQueue(errorQueueAddress);
        }
예제 #3
0
        /// <summary>
        /// Constructs the retry strategy with the given settings, creating an error queue with the configured name if necessary
        /// </summary>
        public SimpleRetryStrategy(ITransport transport, SimpleRetryStrategySettings simpleRetryStrategySettings, IErrorTracker errorTracker, IRebusLoggerFactory rebusLoggerFactory)
        {
            _transport = transport;
            _simpleRetryStrategySettings = simpleRetryStrategySettings;
            _errorTracker = errorTracker;
            _rebusLoggerFactory = rebusLoggerFactory;

            var errorQueueAddress = _simpleRetryStrategySettings.ErrorQueueAddress;
            
            _transport.CreateQueue(errorQueueAddress);
        }
예제 #4
0
        public void EnsureAuditQueueHasBeenCreated()
        {
            if (_didInitializeAuditQueue)
            {
                return;
            }

            _transport.CreateQueue(AuditQueue);

            _didInitializeAuditQueue = true;
        }
예제 #5
0
        /// <summary>
        /// Constructs the retry strategy with the given settings, creating an error queue with the configured name if necessary
        /// </summary>
        public SimpleRetryStrategy(ITransport transport, SimpleRetryStrategySettings simpleRetryStrategySettings, IErrorTracker errorTracker, IRebusLoggerFactory rebusLoggerFactory)
        {
            _transport = transport;
            _simpleRetryStrategySettings = simpleRetryStrategySettings;
            _errorTracker       = errorTracker;
            _rebusLoggerFactory = rebusLoggerFactory;

            var errorQueueAddress = _simpleRetryStrategySettings.ErrorQueueAddress;

            _transport.CreateQueue(errorQueueAddress);
        }
예제 #6
0
 public void SetTransport(ITransport transport)
 {
     _transport = transport;
     //Create the error queue, can ignore any other error because in this phase rebus is
     //initializing and throwing in this routine can generate a strange an difficult to diagnostic
     //error message.
     try
     {
         _transport.CreateQueue(_jarvisRebusConfiguration.ErrorQueue);
     }
     catch (Exception ex)
     {
         _logger.ErrorFormat(ex, "Error creating error queue {0} - {1}", _jarvisRebusConfiguration.ErrorQueue, ex.Message);
     }
 }
예제 #7
0
        void MoveMessage(TransportMessage transportMessage, ITransactionContext transactionContext, string destinationQueue)
        {
            if (!_initializedQueues.Contains(destinationQueue))
            {
                _transport.CreateQueue(destinationQueue);
                _initializedQueues.Add(destinationQueue);
            }

            Text.Print("  => '{0}' - ", destinationQueue);

            try
            {
                _transport.Send(destinationQueue, transportMessage, transactionContext).Wait();

                Text.PrintLine("OK");
            }
            catch (Exception exception)
            {
                Text.PrintLine(exception.Message);
                throw;
            }
        }
예제 #8
0
 /// <summary>
 /// Initializes the poison queue error handler by creating the error queue if necessary
 /// </summary>
 public void Initialize()
 {
     _transport.CreateQueue(_simpleRetryStrategySettings.ErrorQueueAddress);
 }
예제 #9
0
 public void CreateQueue(string address)
 {
     _innerTransport.CreateQueue(address);
 }
예제 #10
0
 public void CreateQueue(string address) => _transport.CreateQueue(address);
 public void CreateQueue(string address)
 {
     _inner.CreateQueue(address);
 }
 public void Initialize()
 {
     _transport.CreateQueue(_auditQueue);
 }