Files
Moonlight/Moonlight.ApiServer/Startup/Startup.cs

42 lines
1.2 KiB
C#

using Microsoft.AspNetCore.Builder;
using Moonlight.ApiServer.Plugins;
namespace Moonlight.ApiServer.Startup;
public static partial class Startup
{
public static void AddMoonlight(this WebApplicationBuilder builder, IPluginStartup[] startups)
{
PrintVersionAsync();
CreateStorageAsync();
builder.AddConfiguration();
builder.AddLogging();
builder.ConfigureKestrel();
builder.AddBase(startups);
builder.AddDatabase();
builder.AddAuth();
builder.AddMoonlightCors();
builder.AddMoonlightHangfire();
builder.AddMoonlightSignalR();
builder.AddPlugins(startups);
}
public static void UseMoonlight(this WebApplication application, IPluginStartup[] startups)
{
application.UseBase();
application.UseMoonlightCors();
application.UseAuth();
application.UseMoonlightHangfire();
application.UsePlugins(startups);
}
public static void MapMoonlight(this WebApplication application, IPluginStartup[] startups)
{
application.MapBase();
application.MapMoonlightSignalR();
application.MapPlugins(startups);
}
}