/// <summary>
        /// Initializes a new instance of the <see cref="TransportConfigurationReceive" /> class.
        /// </summary>
        /// <param name="connectionInfo">The connection information.</param>
        /// <param name="queueDelayFactory">The queue delay factory.</param>
        /// <param name="retryDelayFactory">The retry delay factory.</param>
        public TransportConfigurationReceive(IConnectionInformation connectionInfo, 
            IQueueDelayFactory queueDelayFactory, 
            IRetryDelayFactory retryDelayFactory)
        {
            Guard.NotNull(() => connectionInfo, connectionInfo);
            Guard.NotNull(() => queueDelayFactory, queueDelayFactory);
            Guard.NotNull(() => retryDelayFactory, retryDelayFactory);
            ConnectionInfo = connectionInfo;

            QueueDelayBehavior = queueDelayFactory.Create(new List<TimeSpan>());
            RetryDelayBehavior = retryDelayFactory.Create();
            FatalExceptionDelayBehavior = queueDelayFactory.Create(new List<TimeSpan>());
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="TransportConfigurationReceive" /> class.
        /// </summary>
        /// <param name="connectionInfo">The connection information.</param>
        /// <param name="queueDelayFactory">The queue delay factory.</param>
        /// <param name="retryDelayFactory">The retry delay factory.</param>
        public TransportConfigurationReceive(IConnectionInformation connectionInfo,
                                             IQueueDelayFactory queueDelayFactory,
                                             IRetryDelayFactory retryDelayFactory)
        {
            Guard.NotNull(() => connectionInfo, connectionInfo);
            Guard.NotNull(() => queueDelayFactory, queueDelayFactory);
            Guard.NotNull(() => retryDelayFactory, retryDelayFactory);
            ConnectionInfo = connectionInfo;

            QueueDelayBehavior          = queueDelayFactory.Create(new List <TimeSpan>());
            RetryDelayBehavior          = retryDelayFactory.Create();
            FatalExceptionDelayBehavior = queueDelayFactory.Create(new List <TimeSpan>());
        }