From e9dba5781f9fc2111408fd3ff110d0b8709a1ccf Mon Sep 17 00:00:00 2001 From: David Fowler Date: Tue, 2 May 2023 10:51:50 -0700 Subject: [PATCH] More tweaks --- .../Basket/Basket.API/Basket.API.csproj | 6 +++--- .../Basket.API/CustomExtensionMethods.cs | 11 +++-------- src/Services/Basket/Basket.API/GlobalUsings.cs | 18 +----------------- src/Services/Basket/Basket.API/Program.cs | 6 ++---- .../Basket/Basket.API/appsettings.json | 3 +++ .../Basket.FunctionalTests/appsettings.json | 10 +++++++--- 6 files changed, 19 insertions(+), 35 deletions(-) diff --git a/src/Services/Basket/Basket.API/Basket.API.csproj b/src/Services/Basket/Basket.API/Basket.API.csproj index a6512c614..c9d7929a8 100644 --- a/src/Services/Basket/Basket.API/Basket.API.csproj +++ b/src/Services/Basket/Basket.API/Basket.API.csproj @@ -46,9 +46,9 @@ - - - + + + diff --git a/src/Services/Basket/Basket.API/CustomExtensionMethods.cs b/src/Services/Basket/Basket.API/CustomExtensionMethods.cs index 2dccd89f6..67ee876b0 100644 --- a/src/Services/Basket/Basket.API/CustomExtensionMethods.cs +++ b/src/Services/Basket/Basket.API/CustomExtensionMethods.cs @@ -2,18 +2,13 @@ public static class CustomExtensionMethods { - public static IServiceCollection AddRedis(this IServiceCollection services) + public static IServiceCollection AddRedis(this IServiceCollection services, IConfiguration configuration) { - // { - // "ConnectionString": "..." - // } - return services.AddSingleton(sp => { - var settings = sp.GetRequiredService>().Value; - var configuration = ConfigurationOptions.Parse(settings.ConnectionString, true); + var redisConfig = ConfigurationOptions.Parse(configuration.GetConnectionString("redis"), true); - return ConnectionMultiplexer.Connect(configuration); + return ConnectionMultiplexer.Connect(redisConfig); }); } } diff --git a/src/Services/Basket/Basket.API/GlobalUsings.cs b/src/Services/Basket/Basket.API/GlobalUsings.cs index 73978e20c..a24875d35 100644 --- a/src/Services/Basket/Basket.API/GlobalUsings.cs +++ b/src/Services/Basket/Basket.API/GlobalUsings.cs @@ -1,7 +1,4 @@ -global using Autofac.Extensions.DependencyInjection; -global using Autofac; -global using Azure.Core; -global using Azure.Identity; +global using Autofac; global using Basket.API.Infrastructure.ActionResults; global using Basket.API.Infrastructure.Exceptions; global using Basket.API.Infrastructure.Filters; @@ -11,24 +8,15 @@ global using Basket.API.IntegrationEvents.Events; global using Basket.API.Model; global using Grpc.Core; global using GrpcBasket; -global using HealthChecks.UI.Client; global using Microsoft.AspNetCore.Authorization; global using Microsoft.AspNetCore.Builder; -global using Microsoft.AspNetCore.Diagnostics.HealthChecks; global using Microsoft.AspNetCore.Hosting; -global using Microsoft.AspNetCore.Http.Features; global using Microsoft.AspNetCore.Http; global using Microsoft.AspNetCore.Mvc.Authorization; global using Microsoft.AspNetCore.Mvc.Filters; global using Microsoft.AspNetCore.Mvc; -global using Microsoft.AspNetCore.Server.Kestrel.Core; -global using Microsoft.AspNetCore; global using Microsoft.eShopOnContainers.BuildingBlocks.EventBus.Abstractions; global using Microsoft.eShopOnContainers.BuildingBlocks.EventBus.Events; -global using Microsoft.eShopOnContainers.BuildingBlocks.EventBus; -global using Microsoft.eShopOnContainers.BuildingBlocks.EventBusRabbitMQ; -global using Microsoft.eShopOnContainers.BuildingBlocks.EventBusServiceBus; -global using Microsoft.eShopOnContainers.Services.Basket.API.Controllers; global using Microsoft.eShopOnContainers.Services.Basket.API.Infrastructure.Repositories; global using Microsoft.eShopOnContainers.Services.Basket.API.IntegrationEvents.EventHandling; global using Microsoft.eShopOnContainers.Services.Basket.API.IntegrationEvents.Events; @@ -37,19 +25,15 @@ global using Microsoft.eShopOnContainers.Services.Basket.API.Services; global using Microsoft.eShopOnContainers.Services.Basket.API; global using Microsoft.Extensions.Configuration; global using Microsoft.Extensions.DependencyInjection; -global using Microsoft.Extensions.Diagnostics.HealthChecks; global using Microsoft.Extensions.Hosting; global using Microsoft.Extensions.Logging; -global using Microsoft.Extensions.Options; global using Microsoft.OpenApi.Models; -global using RabbitMQ.Client; global using Serilog.Context; global using Serilog; global using StackExchange.Redis; global using Swashbuckle.AspNetCore.SwaggerGen; global using System.Collections.Generic; global using System.ComponentModel.DataAnnotations; -global using System.IdentityModel.Tokens.Jwt; global using System.IO; global using System.Linq; global using System.Net; diff --git a/src/Services/Basket/Basket.API/Program.cs b/src/Services/Basket/Basket.API/Program.cs index 7bdc8709f..be35fd3fc 100644 --- a/src/Services/Basket/Basket.API/Program.cs +++ b/src/Services/Basket/Basket.API/Program.cs @@ -21,9 +21,7 @@ builder.WebHost.UseFailing(options => options.NotFilteredPaths.AddRange(new[] { "/hc", "/liveness" }); }); -builder.Services.Configure(builder.Configuration); - -builder.Services.AddRedis(); +builder.Services.AddRedis(builder.Configuration); builder.Services.AddTransient(); builder.Services.AddTransient(); @@ -33,7 +31,7 @@ builder.Services.AddTransient(); var app = builder.Build(); -app.MapGet("hello", () => "hello"); +app.MapGet("/", () => Results.Redirect("/swagger")); app.UseServiceDefaults(); diff --git a/src/Services/Basket/Basket.API/appsettings.json b/src/Services/Basket/Basket.API/appsettings.json index 928ea904f..66c41a889 100644 --- a/src/Services/Basket/Basket.API/appsettings.json +++ b/src/Services/Basket/Basket.API/appsettings.json @@ -16,6 +16,9 @@ "Protocols": "Http2" } }, + "ConnectionStrings": { + "Redis": "127.0.0.1" + }, "EventBus": { "SubscriptionClientName": "Basket", "ConnectionString": "your-event-bus-connection-string", diff --git a/src/Services/Basket/Basket.FunctionalTests/appsettings.json b/src/Services/Basket/Basket.FunctionalTests/appsettings.json index d4fc14254..6817e5902 100644 --- a/src/Services/Basket/Basket.FunctionalTests/appsettings.json +++ b/src/Services/Basket/Basket.FunctionalTests/appsettings.json @@ -11,9 +11,13 @@ }, "IdentityUrl": "http://localhost:5105", "IdentityUrlExternal": "http://localhost:5105", - "ConnectionString": "127.0.0.1", + "ConnectionStrings": { + "Redis": "127.0.0.1" + }, + "EventBus": { + "ConnectionString": "localhost", + "SubscriptionClientName": "Basket" + }, "isTest": "true", - "EventBusConnection": "localhost", - "SubscriptionClientName": "Basket", "SuppressCheckForUnhandledSecurityMetadata": true }