/// <summary>
        /// Loads the specified queue by name. If the queue has not been configured, it will be created.
        /// </summary>
        /// <param name="queueName">Name of the queue.</param>
        /// <returns>
        /// An instance of <see cref="IQueueContainer" /> with the queue name.
        /// </returns>
        /// <exception cref="System.ArgumentNullException">queueName</exception>
        /// <exception cref="System.ArgumentException">The queue name is invalid.;queueName</exception>
        public IQueueContainer Load(string queueName)
        {
            if (queueName == null)
            {
                throw new ArgumentNullException(nameof(queueName));
            }

            if (string.IsNullOrWhiteSpace(queueName))
            {
                throw new ArgumentException("The queue name is invalid.", nameof(queueName));
            }

            return(_queues.GetOrAdd(queueName, key =>
            {
                var queue = new QueueConfiguration {
                    Name = key, LockCollection = LockCollection
                };
                return CreateContainer(queue);
            }));
        }
        /// <summary>
        /// Loads the specified queue by name. If the queue has not been configured, it will be created.
        /// </summary>
        /// <param name="queueName">Name of the queue.</param>
        /// <returns>
        /// An instance of <see cref="IQueueContainer" /> with the queue name.
        /// </returns>
        /// <exception cref="System.ArgumentNullException">queueName</exception>
        /// <exception cref="System.ArgumentException">The queue name is invalid.;queueName</exception>
        public IQueueContainer Load(string queueName)
        {
            if (queueName == null)
                throw new ArgumentNullException(nameof(queueName));

            if (string.IsNullOrWhiteSpace(queueName))
                throw new ArgumentException("The queue name is invalid.", nameof(queueName));

            return _queues.GetOrAdd(queueName, key =>
            {
                var queue = new QueueConfiguration { Name = key, LockCollection = LockCollection };
                return CreateContainer(queue);
            });
        }