public RabbitMqResourceAwaiter(HttpClient httpClient, RabbitMqResourceConfiguration configuration, ILogger <RabbitMqResourceAwaiter> logger)
 {
     _httpClient    = httpClient;
     _logger        = logger;
     _configuration = configuration;
     ConfigureHttpClientAuthentication();
 }
        public static IServiceCollection AddResourceAwaiters(this IServiceCollection serviceCollection, RabbitMqResourceConfiguration rabbitMqResourceConfiguration)
        {
            serviceCollection.AddTransient <IdentityServerAwaiter>();
            serviceCollection.AddHttpClient <IdentityServerAwaiter>();

            serviceCollection.AddTransient <RabbitMqResourceAwaiter>();
            serviceCollection.AddHttpClient <RabbitMqResourceAwaiter>();
            serviceCollection.AddTransient <RabbitMqResourceConfiguration>(provider => rabbitMqResourceConfiguration);

            serviceCollection.AddTransient <WebApiResourceAwaiter>();
            serviceCollection.AddHttpClient <WebApiResourceAwaiter>();

            serviceCollection.AddTransient <MsSqlResourceAwaiter>();
            return(serviceCollection);
        }