using HomeApi.Extensions; using HomeApi.Integration; using HomeApi.Integration.Client; using HomeApi.Models.Configuration; using Microsoft.Extensions.Options; using Refit; namespace HomeApi.Registration; public static class RegisterIntegration { public static void AddIntegration(this IServiceCollection services, IConfiguration configuration) { services.Configure(configuration.GetSection("ApiConfiguration")); services.AddRefitClient() .ConfigureHttpClient((sp, client) => { var config = sp.GetRequiredService>().Value; client.BaseAddress = new Uri(config.BaseUrls.Nominatim); client.DefaultRequestHeaders.Add("User-Agent", "dotnet-geocoder-app"); }); services.AddRefitClient() .ConfigureBaseAddress(apiConfiguration => apiConfiguration.BaseUrls.Aurora); services.AddRefitClient() .ConfigureBaseAddress(apiConfiguration => apiConfiguration.BaseUrls.Weather); services.AddRefitClient() .ConfigureBaseAddress(apiConfiguration => apiConfiguration.BaseUrls.ResRobot); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); } }