public static IServiceCollection AddHttpRequestDispatcherProvider(this IServiceCollection services, HttpRequestDispatcherProvider provider)
        {
            if (services == null)
            {
                throw new ArgumentNullException(nameof(services));
            }

            if (provider == null)
            {
                throw new ArgumentNullException(nameof(provider));
            }

            services.AddSingleton(provider);

            return services;
        }
        /// <summary>
        /// Adds the <see cref="HttpRequestDispatcherProvider"/>.
        /// </summary>
        /// <param name="services">
        /// The services.
        /// </param>
        /// <param name="provider">
        /// The provider.
        /// </param>
        /// <returns>
        /// The <see cref="IServiceCollection"/>.
        /// </returns>
        /// <exception cref="ArgumentNullException">Either the services or the provider is null.</exception>
        public static IServiceCollection AddHttpRequestDispatcherProvider(
            this IServiceCollection services,
            HttpRequestDispatcherProvider provider)
        {
            if (services == null)
            {
                throw new ArgumentNullException(nameof(services));
            }

            if (provider == null)
            {
                throw new ArgumentNullException(nameof(provider));
            }

            services.AddSingleton(provider);

            return(services);
        }