From d4ec00b0868e5d7fe0fa5b3f1a516a4f3b0c404e Mon Sep 17 00:00:00 2001 From: Galip Tolga Erdem Date: Tue, 25 Jan 2022 23:48:09 +0300 Subject: [PATCH] updated service modules --- .../AdministrationServiceHttpApiHostModule.cs | 168 ++++++++-------- .../BasketServiceHttpApiHostModule.cs | 156 ++++++++------- .../CatalogServiceHttpApiHostModule.cs | 182 +++++++++--------- .../IdentityServiceHttpApiHostModule.cs | 155 +++++++-------- .../OrderingServiceHttpApiHostModule.cs | 172 ++++++++--------- .../PaymentServiceHttpApiHostModule.cs | 161 ++++++++-------- 6 files changed, 493 insertions(+), 501 deletions(-) diff --git a/services/administration/src/EShopOnAbp.AdministrationService.HttpApi.Host/AdministrationServiceHttpApiHostModule.cs b/services/administration/src/EShopOnAbp.AdministrationService.HttpApi.Host/AdministrationServiceHttpApiHostModule.cs index d527355c..5fc29b45 100644 --- a/services/administration/src/EShopOnAbp.AdministrationService.HttpApi.Host/AdministrationServiceHttpApiHostModule.cs +++ b/services/administration/src/EShopOnAbp.AdministrationService.HttpApi.Host/AdministrationServiceHttpApiHostModule.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Threading.Tasks; using EShopOnAbp.AdministrationService.DbMigrations; using EShopOnAbp.AdministrationService.EntityFrameworkCore; using EShopOnAbp.Shared.Hosting.AspNetCore; @@ -17,104 +18,97 @@ using Volo.Abp.Identity; using Volo.Abp.Modularity; using Volo.Abp.Threading; -namespace EShopOnAbp.AdministrationService +namespace EShopOnAbp.AdministrationService; + +[DependsOn( + typeof(AdministrationServiceHttpApiModule), + typeof(AdministrationServiceApplicationModule), + typeof(AdministrationServiceEntityFrameworkCoreModule), + typeof(EShopOnAbpSharedHostingMicroservicesModule), + typeof(AbpHttpClientIdentityModelWebModule), + typeof(AbpAspNetCoreMvcUiMultiTenancyModule), + typeof(AbpIdentityHttpApiClientModule) +)] +public class AdministrationServiceHttpApiHostModule : AbpModule { - [DependsOn( - typeof(AdministrationServiceHttpApiModule), - typeof(AdministrationServiceApplicationModule), - typeof(AdministrationServiceEntityFrameworkCoreModule), - typeof(EShopOnAbpSharedHostingMicroservicesModule), - typeof(AbpHttpClientIdentityModelWebModule), - typeof(AbpAspNetCoreMvcUiMultiTenancyModule), - typeof(AbpIdentityHttpApiClientModule) - )] - public class AdministrationServiceHttpApiHostModule : AbpModule + public override void ConfigureServices(ServiceConfigurationContext context) { - public override void ConfigureServices(ServiceConfigurationContext context) - { - var configuration = context.Services.GetConfiguration(); - - JwtBearerConfigurationHelper.Configure(context, "AdministrationService"); - - SwaggerWithAuthConfigurationHelper.Configure( - context: context, - authority: configuration["AuthServer:Authority"], - scopes: new Dictionary /* Requested scopes for authorization code request and descriptions for swagger UI only */ + var configuration = context.Services.GetConfiguration(); + + JwtBearerConfigurationHelper.Configure(context, "AdministrationService"); + + SwaggerWithAuthConfigurationHelper.Configure( + context: context, + authority: configuration["AuthServer:Authority"], + scopes: new + Dictionary /* Requested scopes for authorization code request and descriptions for swagger UI only */ { - {"AdministrationService", "Administration Service API"}, + {"AdministrationService", "Administration Service API"} }, - apiTitle: "Administration Service API" - ); - - context.Services.AddCors(options => + apiTitle: "Administration Service API" + ); + + context.Services.AddCors(options => + { + options.AddDefaultPolicy(builder => { - options.AddDefaultPolicy(builder => - { - builder - .WithOrigins( - configuration["App:CorsOrigins"] - .Split(",", StringSplitOptions.RemoveEmptyEntries) - .Select(o => o.Trim().RemovePostFix("/")) - .ToArray() - ) - .WithAbpExposedHeaders() - .SetIsOriginAllowedToAllowWildcardSubdomains() - .AllowAnyHeader() - .AllowAnyMethod() - .AllowCredentials(); - }); + builder + .WithOrigins( + configuration["App:CorsOrigins"] + .Split(",", StringSplitOptions.RemoveEmptyEntries) + .Select(o => o.Trim().RemovePostFix("/")) + .ToArray() + ) + .WithAbpExposedHeaders() + .SetIsOriginAllowedToAllowWildcardSubdomains() + .AllowAnyHeader() + .AllowAnyMethod() + .AllowCredentials(); }); - } - public override void OnApplicationInitialization(ApplicationInitializationContext context) - { - var app = context.GetApplicationBuilder(); - var env = context.GetEnvironment(); + }); + } - if (env.IsDevelopment()) - { - app.UseDeveloperExceptionPage(); - } + public override void OnApplicationInitialization(ApplicationInitializationContext context) + { + var app = context.GetApplicationBuilder(); + var env = context.GetEnvironment(); - app.UseCorrelationId(); - app.UseCors(); - app.UseAbpRequestLocalization(); - app.UseStaticFiles(); - app.UseRouting(); - app.UseAuthentication(); - app.UseAbpClaimsMap(); - app.UseAuthorization(); - app.UseSwagger(); - app.UseSwaggerUI(options => - { - var configuration = context.ServiceProvider.GetRequiredService(); - options.SwaggerEndpoint("/swagger/v1/swagger.json", "Administration Service API"); - options.OAuthClientId(configuration["AuthServer:SwaggerClientId"]); - options.OAuthClientSecret(configuration["AuthServer:SwaggerClientSecret"]); - }); - app.UseAbpSerilogEnrichers(); - app.UseAuditing(); - app.UseUnitOfWork(); - app.UseConfiguredEndpoints(); + if (env.IsDevelopment()) + { + app.UseDeveloperExceptionPage(); } - public override void OnPostApplicationInitialization(ApplicationInitializationContext context) + app.UseCorrelationId(); + app.UseCors(); + app.UseAbpRequestLocalization(); + app.UseStaticFiles(); + app.UseRouting(); + app.UseAuthentication(); + app.UseAbpClaimsMap(); + app.UseAuthorization(); + app.UseSwagger(); + app.UseSwaggerUI(options => { - using (var scope = context.ServiceProvider.CreateScope()) - { - AsyncHelper.RunSync( - () => scope.ServiceProvider - .GetRequiredService() - .CheckAsync() - ); + var configuration = context.ServiceProvider.GetRequiredService(); + options.SwaggerEndpoint("/swagger/v1/swagger.json", "Administration Service API"); + options.OAuthClientId(configuration["AuthServer:SwaggerClientId"]); + options.OAuthClientSecret(configuration["AuthServer:SwaggerClientSecret"]); + }); + app.UseAbpSerilogEnrichers(); + app.UseAuditing(); + app.UseUnitOfWork(); + app.UseConfiguredEndpoints(); + } - //Log.Information("Sending event..."); + public override async Task OnPostApplicationInitializationAsync(ApplicationInitializationContext context) + { + await context.ServiceProvider + .GetRequiredService() + .CheckAsync(); + } - //AsyncHelper.RunSync( - // () => scope.ServiceProvider - // .GetRequiredService() - // .PublishAsync(new TenantCreatedEto { Id = Guid.Empty, Name = "Sample" }) - // ); - } - } + public override void OnPostApplicationInitialization(ApplicationInitializationContext context) + { + AsyncHelper.RunSync(() => OnApplicationInitializationAsync(context)); } -} +} \ No newline at end of file diff --git a/services/basket/src/EShopOnAbp.BasketService.HttpApi.Host/BasketServiceHttpApiHostModule.cs b/services/basket/src/EShopOnAbp.BasketService.HttpApi.Host/BasketServiceHttpApiHostModule.cs index 11c952cd..a1d990d5 100644 --- a/services/basket/src/EShopOnAbp.BasketService.HttpApi.Host/BasketServiceHttpApiHostModule.cs +++ b/services/basket/src/EShopOnAbp.BasketService.HttpApi.Host/BasketServiceHttpApiHostModule.cs @@ -13,98 +13,96 @@ using Volo.Abp.AspNetCore.Mvc; using Volo.Abp.AspNetCore.Mvc.AntiForgery; using Volo.Abp.Modularity; -namespace EShopOnAbp.BasketService +namespace EShopOnAbp.BasketService; + +[DependsOn( + typeof(BasketServiceHttpApiModule), + typeof(BasketServiceApplicationModule), + typeof(EShopOnAbpSharedHostingMicroservicesModule) +)] +public class BasketServiceHttpApiHostModule : AbpModule { - [DependsOn( - typeof(BasketServiceHttpApiModule), - typeof(BasketServiceApplicationModule), - typeof(EShopOnAbpSharedHostingMicroservicesModule) - )] - public class BasketServiceHttpApiHostModule : AbpModule + public override void ConfigureServices(ServiceConfigurationContext context) { - public override void ConfigureServices(ServiceConfigurationContext context) - { - Microsoft.IdentityModel.Logging.IdentityModelEventSource.ShowPII = true; - - var configuration = context.Services.GetConfiguration(); - var hostingEnvironment = context.Services.GetHostingEnvironment(); + Microsoft.IdentityModel.Logging.IdentityModelEventSource.ShowPII = true; - JwtBearerConfigurationHelper.Configure(context, - "AdministrationService"); //TODO: Should be "BasketService", but didn't work :( + var configuration = context.Services.GetConfiguration(); + var hostingEnvironment = context.Services.GetHostingEnvironment(); - SwaggerWithAuthConfigurationHelper.Configure( - context: context, - authority: configuration["AuthServer:Authority"], - scopes: new - Dictionary /* Requested scopes for authorization code request and descriptions for swagger UI only */ - { - {"BasketService", "Catalog Service API"}, - }, - apiTitle: "Basket Service API" - ); + JwtBearerConfigurationHelper.Configure(context, "BasketService"); - context.Services.AddCors(options => - { - options.AddDefaultPolicy(builder => + SwaggerWithAuthConfigurationHelper.Configure( + context: context, + authority: configuration["AuthServer:Authority"], + scopes: new + Dictionary /* Requested scopes for authorization code request and descriptions for swagger UI only */ { - builder - .WithOrigins( - configuration["App:CorsOrigins"] - .Split(",", StringSplitOptions.RemoveEmptyEntries) - .Select(o => o.Trim().RemovePostFix("/")) - .ToArray() - ) - .WithAbpExposedHeaders() - .SetIsOriginAllowedToAllowWildcardSubdomains() - .AllowAnyHeader() - .AllowAnyMethod() - .AllowCredentials(); - }); - }); + {"BasketService", "Basket Service API"} + }, + apiTitle: "Basket Service API" + ); - Configure(options => + context.Services.AddCors(options => + { + options.AddDefaultPolicy(builder => { - options.ConventionalControllers.Create( - typeof(BasketServiceApplicationModule).Assembly, opts => - { - opts.RootPath = "basket"; - opts.RemoteServiceName = "Basket"; - }); + builder + .WithOrigins( + configuration["App:CorsOrigins"] + .Split(",", StringSplitOptions.RemoveEmptyEntries) + .Select(o => o.Trim().RemovePostFix("/")) + .ToArray() + ) + .WithAbpExposedHeaders() + .SetIsOriginAllowedToAllowWildcardSubdomains() + .AllowAnyHeader() + .AllowAnyMethod() + .AllowCredentials(); }); + }); - Configure(options => { options.AutoValidate = false; }); - } - - public override void OnApplicationInitialization(ApplicationInitializationContext context) + Configure(options => { - var app = context.GetApplicationBuilder(); - var env = context.GetEnvironment(); + options.ConventionalControllers.Create( + typeof(BasketServiceApplicationModule).Assembly, opts => + { + opts.RootPath = "basket"; + opts.RemoteServiceName = "Basket"; + }); + }); - if (env.IsDevelopment()) - { - app.UseDeveloperExceptionPage(); - } + Configure(options => { options.AutoValidate = false; }); + } - app.UseCorrelationId(); - app.UseCors(); - app.UseAbpRequestLocalization(); - app.UseStaticFiles(); - app.UseRouting(); - app.UseAuthentication(); - app.UseAbpClaimsMap(); - app.UseAuthorization(); - app.UseSwagger(); - app.UseSwaggerUI(options => - { - var configuration = context.ServiceProvider.GetRequiredService(); - options.SwaggerEndpoint("/swagger/v1/swagger.json", "Basket Service API"); - options.OAuthClientId(configuration["AuthServer:SwaggerClientId"]); - options.OAuthClientSecret(configuration["AuthServer:SwaggerClientSecret"]); - }); - app.UseAbpSerilogEnrichers(); - app.UseAuditing(); - app.UseUnitOfWork(); - app.UseConfiguredEndpoints(); + public override void OnApplicationInitialization(ApplicationInitializationContext context) + { + var app = context.GetApplicationBuilder(); + var env = context.GetEnvironment(); + + if (env.IsDevelopment()) + { + app.UseDeveloperExceptionPage(); } + + app.UseCorrelationId(); + app.UseCors(); + app.UseAbpRequestLocalization(); + app.UseStaticFiles(); + app.UseRouting(); + app.UseAuthentication(); + app.UseAbpClaimsMap(); + app.UseAuthorization(); + app.UseSwagger(); + app.UseSwaggerUI(options => + { + var configuration = context.ServiceProvider.GetRequiredService(); + options.SwaggerEndpoint("/swagger/v1/swagger.json", "Basket Service API"); + options.OAuthClientId(configuration["AuthServer:SwaggerClientId"]); + options.OAuthClientSecret(configuration["AuthServer:SwaggerClientSecret"]); + }); + app.UseAbpSerilogEnrichers(); + app.UseAuditing(); + app.UseUnitOfWork(); + app.UseConfiguredEndpoints(); } } \ No newline at end of file diff --git a/services/catalog/src/EShopOnAbp.CatalogService.HttpApi.Host/CatalogServiceHttpApiHostModule.cs b/services/catalog/src/EShopOnAbp.CatalogService.HttpApi.Host/CatalogServiceHttpApiHostModule.cs index bf85fc02..5d4a22ef 100644 --- a/services/catalog/src/EShopOnAbp.CatalogService.HttpApi.Host/CatalogServiceHttpApiHostModule.cs +++ b/services/catalog/src/EShopOnAbp.CatalogService.HttpApi.Host/CatalogServiceHttpApiHostModule.cs @@ -8,6 +8,7 @@ using Microsoft.Extensions.Hosting; using System; using System.Collections.Generic; using System.Linq; +using System.Threading.Tasks; using EShopOnAbp.CatalogService.MongoDB; using Microsoft.Extensions.Configuration; using Volo.Abp; @@ -17,114 +18,111 @@ using Volo.Abp.Modularity; using Volo.Abp.Threading; using Volo.Abp.Uow; -namespace EShopOnAbp.CatalogService +namespace EShopOnAbp.CatalogService; + +[DependsOn( + typeof(CatalogServiceHttpApiModule), + typeof(CatalogServiceApplicationModule), + typeof(CatalogServiceMongoDbModule), + typeof(EShopOnAbpSharedHostingMicroservicesModule) +)] +public class CatalogServiceHttpApiHostModule : AbpModule { - [DependsOn( - typeof(CatalogServiceHttpApiModule), - typeof(CatalogServiceApplicationModule), - typeof(CatalogServiceMongoDbModule), - typeof(EShopOnAbpSharedHostingMicroservicesModule) - )] - public class CatalogServiceHttpApiHostModule : AbpModule + public override void ConfigureServices(ServiceConfigurationContext context) { - public override void ConfigureServices(ServiceConfigurationContext context) - { - var configuration = context.Services.GetConfiguration(); + var configuration = context.Services.GetConfiguration(); - JwtBearerConfigurationHelper.Configure(context, "CatalogService"); + JwtBearerConfigurationHelper.Configure(context, "CatalogService"); - SwaggerWithAuthConfigurationHelper.Configure( - context: context, - authority: configuration["AuthServer:Authority"], - scopes: new Dictionary /* Requested scopes for authorization code request and descriptions for swagger UI only */ + SwaggerWithAuthConfigurationHelper.Configure( + context: context, + authority: configuration["AuthServer:Authority"], + scopes: new + Dictionary /* Requested scopes for authorization code request and descriptions for swagger UI only */ { - {"CatalogService", "Catalog Service API"}, + {"CatalogService", "Catalog Service API"} }, - apiTitle: "Catalog Service API" - ); + apiTitle: "Catalog Service API" + ); - context.Services.AddCors(options => - { - options.AddDefaultPolicy(builder => - { - builder - .WithOrigins( - configuration["App:CorsOrigins"] - .Split(",", StringSplitOptions.RemoveEmptyEntries) - .Select(o => o.Trim().RemovePostFix("/")) - .ToArray() - ) - .WithAbpExposedHeaders() - .SetIsOriginAllowedToAllowWildcardSubdomains() - .AllowAnyHeader() - .AllowAnyMethod() - .AllowCredentials(); - }); - }); - - Configure(options => - { - options.ConventionalControllers.Create(typeof(CatalogServiceApplicationModule).Assembly, opts => - { - opts.RootPath = "catalog"; - opts.RemoteServiceName = "Catalog"; - }); - }); - - Configure(options => + context.Services.AddCors(options => + { + options.AddDefaultPolicy(builder => { - //Standalone MongoDB servers don't support transactions - options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + builder + .WithOrigins( + configuration["App:CorsOrigins"] + .Split(",", StringSplitOptions.RemoveEmptyEntries) + .Select(o => o.Trim().RemovePostFix("/")) + .ToArray() + ) + .WithAbpExposedHeaders() + .SetIsOriginAllowedToAllowWildcardSubdomains() + .AllowAnyHeader() + .AllowAnyMethod() + .AllowCredentials(); }); - - Configure(options => + }); + + Configure(options => + { + options.ConventionalControllers.Create(typeof(CatalogServiceApplicationModule).Assembly, opts => { - options.AutoValidate = false; + opts.RootPath = "catalog"; + opts.RemoteServiceName = "Catalog"; }); - } + }); - public override void OnApplicationInitialization(ApplicationInitializationContext context) + Configure(options => { - var app = context.GetApplicationBuilder(); - var env = context.GetEnvironment(); + //Standalone MongoDB servers don't support transactions + options.TransactionBehavior = UnitOfWorkTransactionBehavior.Disabled; + }); - if (env.IsDevelopment()) - { - app.UseDeveloperExceptionPage(); - } + Configure(options => { options.AutoValidate = false; }); + } - app.UseCorrelationId(); - app.UseCors(); - app.UseAbpRequestLocalization(); - app.UseStaticFiles(); - app.UseRouting(); - app.UseAuthentication(); - app.UseAbpClaimsMap(); - app.UseAuthorization(); - app.UseSwagger(); - app.UseSwaggerUI(options => - { - var configuration = context.ServiceProvider.GetRequiredService(); - options.SwaggerEndpoint("/swagger/v1/swagger.json", "Catalog Service API"); - options.OAuthClientId(configuration["AuthServer:SwaggerClientId"]); - options.OAuthClientSecret(configuration["AuthServer:SwaggerClientSecret"]); - }); - app.UseAbpSerilogEnrichers(); - app.UseAuditing(); - app.UseUnitOfWork(); - app.UseConfiguredEndpoints(); - } + public override void OnApplicationInitialization(ApplicationInitializationContext context) + { + var app = context.GetApplicationBuilder(); + var env = context.GetEnvironment(); - public override void OnPostApplicationInitialization(ApplicationInitializationContext context) + if (env.IsDevelopment()) { - using (var scope = context.ServiceProvider.CreateScope()) - { - AsyncHelper.RunSync( - () => scope.ServiceProvider - .GetRequiredService() - .CheckAsync() - ); - } + app.UseDeveloperExceptionPage(); } + + app.UseCorrelationId(); + app.UseCors(); + app.UseAbpRequestLocalization(); + app.UseStaticFiles(); + app.UseRouting(); + app.UseAuthentication(); + app.UseAbpClaimsMap(); + app.UseAuthorization(); + app.UseSwagger(); + app.UseSwaggerUI(options => + { + var configuration = context.ServiceProvider.GetRequiredService(); + options.SwaggerEndpoint("/swagger/v1/swagger.json", "Catalog Service API"); + options.OAuthClientId(configuration["AuthServer:SwaggerClientId"]); + options.OAuthClientSecret(configuration["AuthServer:SwaggerClientSecret"]); + }); + app.UseAbpSerilogEnrichers(); + app.UseAuditing(); + app.UseUnitOfWork(); + app.UseConfiguredEndpoints(); + } + + public override async Task OnPostApplicationInitializationAsync(ApplicationInitializationContext context) + { + await context.ServiceProvider + .GetRequiredService() + .CheckAsync(); + } + + public override void OnPostApplicationInitialization(ApplicationInitializationContext context) + { + AsyncHelper.RunSync(() => OnApplicationInitializationAsync(context)); } -} +} \ No newline at end of file diff --git a/services/identity/src/EShopOnAbp.IdentityService.HttpApi.Host/IdentityServiceHttpApiHostModule.cs b/services/identity/src/EShopOnAbp.IdentityService.HttpApi.Host/IdentityServiceHttpApiHostModule.cs index 984665e7..fa5afa16 100644 --- a/services/identity/src/EShopOnAbp.IdentityService.HttpApi.Host/IdentityServiceHttpApiHostModule.cs +++ b/services/identity/src/EShopOnAbp.IdentityService.HttpApi.Host/IdentityServiceHttpApiHostModule.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Threading.Tasks; using EShopOnAbp.IdentityService.DbMigrations; using EShopOnAbp.IdentityService.EntityFrameworkCore; using EShopOnAbp.Shared.Hosting.AspNetCore; @@ -15,96 +16,96 @@ using Volo.Abp; using Volo.Abp.Modularity; using Volo.Abp.Threading; -namespace EShopOnAbp.IdentityService +namespace EShopOnAbp.IdentityService; + +[DependsOn( + typeof(EShopOnAbpSharedHostingMicroservicesModule), + typeof(IdentityServiceHttpApiModule), + typeof(IdentityServiceApplicationModule), + typeof(IdentityServiceEntityFrameworkCoreModule), + typeof(EShopOnAbpSharedHostingGatewaysModule) +)] +public class IdentityServiceHttpApiHostModule : AbpModule { - [DependsOn( - typeof(EShopOnAbpSharedHostingMicroservicesModule), - typeof(IdentityServiceHttpApiModule), - typeof(IdentityServiceApplicationModule), - typeof(IdentityServiceEntityFrameworkCoreModule), - typeof(EShopOnAbpSharedHostingGatewaysModule) - )] - public class IdentityServiceHttpApiHostModule : AbpModule + public override void ConfigureServices(ServiceConfigurationContext context) { - public override void ConfigureServices(ServiceConfigurationContext context) - { - var configuration = context.Services.GetConfiguration(); + var configuration = context.Services.GetConfiguration(); + + JwtBearerConfigurationHelper.Configure(context, "IdentityService"); - JwtBearerConfigurationHelper.Configure(context, "IdentityService"); - - SwaggerWithAuthConfigurationHelper.Configure( - context: context, - authority: configuration["AuthServer:Authority"], - scopes: new Dictionary /* Requested scopes for authorization code request and descriptions for swagger UI only */ + SwaggerWithAuthConfigurationHelper.Configure( + context: context, + authority: configuration["AuthServer:Authority"], + scopes: new + Dictionary /* Requested scopes for authorization code request and descriptions for swagger UI only */ { {"IdentityService", "Identity Service API"} }, - apiTitle: "IdentityService Gateway API" - ); - + apiTitle: "IdentityService Gateway API" + ); - context.Services.AddCors(options => - { - options.AddDefaultPolicy(builder => - { - builder - .WithOrigins( - configuration["App:CorsOrigins"] - .Split(",", StringSplitOptions.RemoveEmptyEntries) - .Select(o => o.Trim().RemovePostFix("/")) - .ToArray() - ) - .WithAbpExposedHeaders() - .SetIsOriginAllowedToAllowWildcardSubdomains() - .AllowAnyHeader() - .AllowAnyMethod() - .AllowCredentials(); - }); - }); - } - public override void OnApplicationInitialization(ApplicationInitializationContext context) + context.Services.AddCors(options => { - var app = context.GetApplicationBuilder(); - var env = context.GetEnvironment(); - - if (env.IsDevelopment()) - { - app.UseDeveloperExceptionPage(); - } - - app.UseCorrelationId(); - app.UseCors(); - app.UseAbpRequestLocalization(); - app.UseStaticFiles(); - app.UseRouting(); - app.UseAuthentication(); - app.UseAbpClaimsMap(); - app.UseAuthorization(); - app.UseSwagger(); - app.UseSwaggerUI(options => + options.AddDefaultPolicy(builder => { - var configuration = context.ServiceProvider.GetRequiredService(); - options.SwaggerEndpoint("/swagger/v1/swagger.json", "Identity Service API"); - options.OAuthClientId(configuration["AuthServer:SwaggerClientId"]); - options.OAuthClientSecret(configuration["AuthServer:SwaggerClientSecret"]); + builder + .WithOrigins( + configuration["App:CorsOrigins"] + .Split(",", StringSplitOptions.RemoveEmptyEntries) + .Select(o => o.Trim().RemovePostFix("/")) + .ToArray() + ) + .WithAbpExposedHeaders() + .SetIsOriginAllowedToAllowWildcardSubdomains() + .AllowAnyHeader() + .AllowAnyMethod() + .AllowCredentials(); }); - app.UseAbpSerilogEnrichers(); - app.UseAuditing(); - app.UseUnitOfWork(); - app.UseConfiguredEndpoints(); - } + }); + } - public override void OnPostApplicationInitialization(ApplicationInitializationContext context) + public override void OnApplicationInitialization(ApplicationInitializationContext context) + { + var app = context.GetApplicationBuilder(); + var env = context.GetEnvironment(); + + if (env.IsDevelopment()) { - using (var scope = context.ServiceProvider.CreateScope()) - { - AsyncHelper.RunSync( - () => scope.ServiceProvider - .GetRequiredService() - .CheckAsync() - ); - } + app.UseDeveloperExceptionPage(); } + + app.UseCorrelationId(); + app.UseCors(); + app.UseAbpRequestLocalization(); + app.UseStaticFiles(); + app.UseRouting(); + app.UseAuthentication(); + app.UseAbpClaimsMap(); + app.UseAuthorization(); + app.UseSwagger(); + app.UseSwaggerUI(options => + { + var configuration = context.ServiceProvider.GetRequiredService(); + options.SwaggerEndpoint("/swagger/v1/swagger.json", "Identity Service API"); + options.OAuthClientId(configuration["AuthServer:SwaggerClientId"]); + options.OAuthClientSecret(configuration["AuthServer:SwaggerClientSecret"]); + }); + app.UseAbpSerilogEnrichers(); + app.UseAuditing(); + app.UseUnitOfWork(); + app.UseConfiguredEndpoints(); + } + + public override async Task OnPostApplicationInitializationAsync(ApplicationInitializationContext context) + { + await context.ServiceProvider + .GetRequiredService() + .CheckAsync(); + } + + public override void OnPostApplicationInitialization(ApplicationInitializationContext context) + { + AsyncHelper.RunSync(() => OnApplicationInitializationAsync(context)); } } \ No newline at end of file diff --git a/services/ordering/src/EShopOnAbp.OrderingService.HttpApi.Host/OrderingServiceHttpApiHostModule.cs b/services/ordering/src/EShopOnAbp.OrderingService.HttpApi.Host/OrderingServiceHttpApiHostModule.cs index 9bf50492..bdca425b 100644 --- a/services/ordering/src/EShopOnAbp.OrderingService.HttpApi.Host/OrderingServiceHttpApiHostModule.cs +++ b/services/ordering/src/EShopOnAbp.OrderingService.HttpApi.Host/OrderingServiceHttpApiHostModule.cs @@ -9,112 +9,112 @@ using Microsoft.Extensions.Hosting; using System; using System.Collections.Generic; using System.Linq; +using System.Threading.Tasks; using Microsoft.Extensions.Configuration; using Volo.Abp; using Volo.Abp.AspNetCore.Mvc; using Volo.Abp.Modularity; using Volo.Abp.Threading; -namespace EShopOnAbp.OrderingService +namespace EShopOnAbp.OrderingService; + +[DependsOn( + typeof(OrderingServiceHttpApiModule), + typeof(OrderingServiceApplicationModule), + typeof(OrderingServiceEntityFrameworkCoreModule), + typeof(EShopOnAbpSharedHostingMicroservicesModule) +)] +public class OrderingServiceHttpApiHostModule : AbpModule { - [DependsOn( - typeof(OrderingServiceHttpApiModule), - typeof(OrderingServiceApplicationModule), - typeof(OrderingServiceEntityFrameworkCoreModule), - typeof(EShopOnAbpSharedHostingMicroservicesModule) - )] - public class OrderingServiceHttpApiHostModule : AbpModule + public override void ConfigureServices(ServiceConfigurationContext context) { - public override void ConfigureServices(ServiceConfigurationContext context) - { - var hostingEnvironment = context.Services.GetHostingEnvironment(); - var configuration = context.Services.GetConfiguration(); + var configuration = context.Services.GetConfiguration(); + var hostingEnvironment = context.Services.GetHostingEnvironment(); - JwtBearerConfigurationHelper.Configure(context, "OrderingService"); + JwtBearerConfigurationHelper.Configure(context, "OrderingService"); - SwaggerWithAuthConfigurationHelper.Configure( - context: context, - authority: configuration["AuthServer:Authority"], - scopes: new Dictionary /* Requested scopes for authorization code request and descriptions for swagger UI only */ + SwaggerWithAuthConfigurationHelper.Configure( + context: context, + authority: configuration["AuthServer:Authority"], + scopes: new + Dictionary /* Requested scopes for authorization code request and descriptions for swagger UI only */ { - {"OrderingService", "Ordering Service API"}, + {"OrderingService", "Ordering Service API"} }, - apiTitle: "Ordering Service API" - ); + apiTitle: "Ordering Service API" + ); - context.Services.AddCors(options => - { - options.AddDefaultPolicy(builder => - { - builder - .WithOrigins( - configuration["App:CorsOrigins"] - .Split(",", StringSplitOptions.RemoveEmptyEntries) - .Select(o => o.Trim().RemovePostFix("/")) - .ToArray() - ) - .WithAbpExposedHeaders() - .SetIsOriginAllowedToAllowWildcardSubdomains() - .AllowAnyHeader() - .AllowAnyMethod() - .AllowCredentials(); - }); - }); - - // TODO: Crate controller instead of auto-controller configuration - Configure(options => + context.Services.AddCors(options => + { + options.AddDefaultPolicy(builder => { - options.ConventionalControllers.Create(typeof(OrderingServiceApplicationModule).Assembly, opts => - { - opts.RootPath = "ordering"; - opts.RemoteServiceName = "Ordering"; - }); + builder + .WithOrigins( + configuration["App:CorsOrigins"] + .Split(",", StringSplitOptions.RemoveEmptyEntries) + .Select(o => o.Trim().RemovePostFix("/")) + .ToArray() + ) + .WithAbpExposedHeaders() + .SetIsOriginAllowedToAllowWildcardSubdomains() + .AllowAnyHeader() + .AllowAnyMethod() + .AllowCredentials(); }); - } + }); - public override void OnApplicationInitialization(ApplicationInitializationContext context) + // TODO: Crate controller instead of auto-controller configuration + Configure(options => { - var app = context.GetApplicationBuilder(); - var env = context.GetEnvironment(); - - if (env.IsDevelopment()) + options.ConventionalControllers.Create(typeof(OrderingServiceApplicationModule).Assembly, opts => { - app.UseDeveloperExceptionPage(); - } - - app.UseCorrelationId(); - app.UseCors(); - app.UseAbpRequestLocalization(); - app.UseStaticFiles(); - app.UseRouting(); - app.UseAuthentication(); - app.UseAbpClaimsMap(); - app.UseAuthorization(); - app.UseSwagger(); - app.UseSwaggerUI(options => - { - var configuration = context.ServiceProvider.GetRequiredService(); - options.SwaggerEndpoint("/swagger/v1/swagger.json", "Ordering Service API"); - options.OAuthClientId(configuration["AuthServer:SwaggerClientId"]); - options.OAuthClientSecret(configuration["AuthServer:SwaggerClientSecret"]); - + opts.RootPath = "ordering"; + opts.RemoteServiceName = "Ordering"; }); - app.UseAbpSerilogEnrichers(); - app.UseAuditing(); - app.UseUnitOfWork(); - app.UseConfiguredEndpoints(); - } + }); + } + + public override void OnApplicationInitialization(ApplicationInitializationContext context) + { + var app = context.GetApplicationBuilder(); + var env = context.GetEnvironment(); - public override void OnPostApplicationInitialization(ApplicationInitializationContext context) + if (env.IsDevelopment()) { - using (var scope = context.ServiceProvider.CreateScope()) - { - AsyncHelper.RunSync( - () => scope.ServiceProvider - .GetRequiredService() - .CheckAsync() - ); - } + app.UseDeveloperExceptionPage(); } + + app.UseCorrelationId(); + app.UseCors(); + app.UseAbpRequestLocalization(); + app.UseStaticFiles(); + app.UseRouting(); + app.UseAuthentication(); + app.UseAbpClaimsMap(); + app.UseAuthorization(); + app.UseSwagger(); + app.UseSwaggerUI(options => + { + var configuration = context.ServiceProvider.GetRequiredService(); + options.SwaggerEndpoint("/swagger/v1/swagger.json", "Ordering Service API"); + options.OAuthClientId(configuration["AuthServer:SwaggerClientId"]); + options.OAuthClientSecret(configuration["AuthServer:SwaggerClientSecret"]); + }); + app.UseAbpSerilogEnrichers(); + app.UseAuditing(); + app.UseUnitOfWork(); + app.UseConfiguredEndpoints(); + } + + public override async Task OnPostApplicationInitializationAsync(ApplicationInitializationContext context) + { + await context.ServiceProvider + .GetRequiredService() + .CheckAsync(); + } + + public override void OnPostApplicationInitialization(ApplicationInitializationContext context) + { + AsyncHelper.RunSync(() => OnApplicationInitializationAsync(context)); } -} +} \ No newline at end of file diff --git a/services/payment/src/EShopOnAbp.PaymentService.HttpApi.Host/PaymentServiceHttpApiHostModule.cs b/services/payment/src/EShopOnAbp.PaymentService.HttpApi.Host/PaymentServiceHttpApiHostModule.cs index 0c0ba4ea..bcd23bfd 100644 --- a/services/payment/src/EShopOnAbp.PaymentService.HttpApi.Host/PaymentServiceHttpApiHostModule.cs +++ b/services/payment/src/EShopOnAbp.PaymentService.HttpApi.Host/PaymentServiceHttpApiHostModule.cs @@ -9,102 +9,103 @@ using Microsoft.Extensions.Hosting; using System; using System.Collections.Generic; using System.Linq; +using System.Threading.Tasks; using Microsoft.Extensions.Configuration; using Volo.Abp; using Volo.Abp.Modularity; using Volo.Abp.Threading; -namespace EShopOnAbp.PaymentService +namespace EShopOnAbp.PaymentService; + +[DependsOn( + typeof(PaymentServiceApplicationModule), + typeof(PaymentServiceEntityFrameworkCoreModule), + typeof(PaymentServiceHttpApiModule), + typeof(EShopOnAbpSharedHostingMicroservicesModule) +)] +public class PaymentServiceHttpApiHostModule : AbpModule { - [DependsOn( - typeof(PaymentServiceApplicationModule), - typeof(PaymentServiceEntityFrameworkCoreModule), - typeof(PaymentServiceHttpApiModule), - typeof(EShopOnAbpSharedHostingMicroservicesModule) - )] - public class PaymentServiceHttpApiHostModule : AbpModule + public override void ConfigureServices(ServiceConfigurationContext context) { - public override void ConfigureServices(ServiceConfigurationContext context) - { - Microsoft.IdentityModel.Logging.IdentityModelEventSource.ShowPII = true; - - var hostingEnvironment = context.Services.GetHostingEnvironment(); - var configuration = context.Services.GetConfiguration(); - - JwtBearerConfigurationHelper.Configure(context, "PaymentService"); + Microsoft.IdentityModel.Logging.IdentityModelEventSource.ShowPII = true; + + var hostingEnvironment = context.Services.GetHostingEnvironment(); + var configuration = context.Services.GetConfiguration(); - SwaggerWithAuthConfigurationHelper.Configure( - context: context, - authority: configuration["AuthServer:Authority"], - scopes: new Dictionary /* Requested scopes for authorization code request and descriptions for swagger UI only */ + JwtBearerConfigurationHelper.Configure(context, "PaymentService"); + + SwaggerWithAuthConfigurationHelper.Configure( + context: context, + authority: configuration["AuthServer:Authority"], + scopes: new + Dictionary /* Requested scopes for authorization code request and descriptions for swagger UI only */ { - {"PaymentService", "Payment Service API"}, + {"PaymentService", "Payment Service API"} }, - apiTitle: "Payment Service API" - ); + apiTitle: "Payment Service API" + ); - context.Services.AddCors(options => + context.Services.AddCors(options => + { + options.AddDefaultPolicy(builder => { - options.AddDefaultPolicy(builder => - { - builder - .WithOrigins( - configuration["App:CorsOrigins"] - .Split(",", StringSplitOptions.RemoveEmptyEntries) - .Select(o => o.Trim().RemovePostFix("/")) - .ToArray() - ) - .WithAbpExposedHeaders() - .SetIsOriginAllowedToAllowWildcardSubdomains() - .AllowAnyHeader() - .AllowAnyMethod() - .AllowCredentials(); - }); + builder + .WithOrigins( + configuration["App:CorsOrigins"] + .Split(",", StringSplitOptions.RemoveEmptyEntries) + .Select(o => o.Trim().RemovePostFix("/")) + .ToArray() + ) + .WithAbpExposedHeaders() + .SetIsOriginAllowedToAllowWildcardSubdomains() + .AllowAnyHeader() + .AllowAnyMethod() + .AllowCredentials(); }); - } - - public override void OnApplicationInitialization(ApplicationInitializationContext context) - { - var app = context.GetApplicationBuilder(); - var env = context.GetEnvironment(); + }); + } - if (env.IsDevelopment()) - { - app.UseDeveloperExceptionPage(); - } + public override void OnApplicationInitialization(ApplicationInitializationContext context) + { + var app = context.GetApplicationBuilder(); + var env = context.GetEnvironment(); - app.UseCorrelationId(); - app.UseCors(); - app.UseAbpRequestLocalization(); - app.UseStaticFiles(); - app.UseRouting(); - app.UseAuthentication(); - app.UseAbpClaimsMap(); - app.UseAuthorization(); - app.UseSwagger(); - app.UseSwaggerUI(options => - { - var configuration = context.ServiceProvider.GetRequiredService(); - options.SwaggerEndpoint("/swagger/v1/swagger.json", "Payment Service API"); - options.OAuthClientId(configuration["AuthServer:SwaggerClientId"]); - options.OAuthClientSecret(configuration["AuthServer:SwaggerClientSecret"]); - }); - app.UseAbpSerilogEnrichers(); - app.UseAuditing(); - app.UseUnitOfWork(); - app.UseConfiguredEndpoints(); + if (env.IsDevelopment()) + { + app.UseDeveloperExceptionPage(); } - public override void OnPostApplicationInitialization(ApplicationInitializationContext context) + app.UseCorrelationId(); + app.UseCors(); + app.UseAbpRequestLocalization(); + app.UseStaticFiles(); + app.UseRouting(); + app.UseAuthentication(); + app.UseAbpClaimsMap(); + app.UseAuthorization(); + app.UseSwagger(); + app.UseSwaggerUI(options => { - using (var scope = context.ServiceProvider.CreateScope()) - { - AsyncHelper.RunSync( - () => scope.ServiceProvider - .GetRequiredService() - .CheckAsync() - ); - } - } + var configuration = context.ServiceProvider.GetRequiredService(); + options.SwaggerEndpoint("/swagger/v1/swagger.json", "Payment Service API"); + options.OAuthClientId(configuration["AuthServer:SwaggerClientId"]); + options.OAuthClientSecret(configuration["AuthServer:SwaggerClientSecret"]); + }); + app.UseAbpSerilogEnrichers(); + app.UseAuditing(); + app.UseUnitOfWork(); + app.UseConfiguredEndpoints(); + } + + public override async Task OnPostApplicationInitializationAsync(ApplicationInitializationContext context) + { + await context.ServiceProvider + .GetRequiredService() + .CheckAsync(); + } + + public override void OnPostApplicationInitialization(ApplicationInitializationContext context) + { + AsyncHelper.RunSync(() => OnApplicationInitializationAsync(context)); } -} +} \ No newline at end of file