using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Mvc.Razor;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Nop.Core.Infrastructure;
namespace Nop.Plugin.Misc.MangoCore.Infrastructure;
public class PluginNopStartup : INopStartup
{
///
/// Add and configure any of the middleware
///
/// Collection of service descriptors
/// Configuration of the application
public void ConfigureServices(IServiceCollection services, IConfiguration configuration)
{
services.Configure(options =>
{
options.ViewLocationExpanders.Add(new ViewLocationExpander());
});
services.AddCors(feature =>
feature.AddPolicy(
"AllowBlazorClient",
apiPolicy => apiPolicy
.WithOrigins("https://localhost:7144", "https://measurementtest.fruitbank.hu", "https://localhost:60589", "http://localhost:5000", "https://localhost:59579", "https://app.fruitbank.hu")
.AllowAnyHeader()
.AllowAnyMethod()
.AllowCredentials()
));
//register services and interfaces
//services.AddScoped();
}
///
/// Configure the using of added middleware
///
/// Builder for configuring an application's request pipeline
public void Configure(IApplicationBuilder application)
{
//application.UseWhen(context => context.Request.Path.StartsWithSegments("/fbhub"), app =>
//{
// app.UseCors("AllowBlazorClient");
// app.UseRouting();
// //app.UseEndpoints(endpoints =>
// //{
// // endpoints.MapHub("/fbhub");
// //});
//});
var fruitBankHubEndPoint = "/fbHub";// $"/{FruitBankConstClient.DefaultHubName}";
application.UseWhen(context => context.Request.Path.StartsWithSegments(fruitBankHubEndPoint), app =>
{
app.UseCors("AllowBlazorClient");
app.UseRouting();
});
var loggrHubEndPoint = "/loggerHub";//$"/{FruitBankConstClient.LoggerHubName}";
application.UseWhen(context => context.Request.Path.StartsWithSegments(loggrHubEndPoint), app =>
{
app.UseCors("AllowBlazorClient");
app.UseRouting();
});
}
///
/// Gets order of this startup configuration implementation
///
public int Order => 100;
}