2022-01-25 17:57:07 +00:00
|
|
|
using VoidCat.Model;
|
|
|
|
using VoidCat.Services;
|
2022-01-25 16:17:48 +00:00
|
|
|
|
|
|
|
var builder = WebApplication.CreateBuilder(args);
|
|
|
|
|
|
|
|
var services = builder.Services;
|
|
|
|
services.AddRouting();
|
2022-01-25 23:39:51 +00:00
|
|
|
services.AddControllers().AddNewtonsoftJson();
|
|
|
|
services.AddScoped<IFileStorage, LocalDiskFileIngressFactory>();
|
2022-01-25 17:57:07 +00:00
|
|
|
services.AddScoped<IStatsCollector, InMemoryStatsCollector>();
|
2022-01-25 16:17:48 +00:00
|
|
|
|
|
|
|
var configuration = builder.Configuration;
|
|
|
|
var voidSettings = configuration.GetSection("Settings").Get<VoidSettings>();
|
|
|
|
services.AddSingleton(voidSettings);
|
|
|
|
|
|
|
|
var app = builder.Build();
|
|
|
|
|
|
|
|
app.UseStaticFiles();
|
|
|
|
app.UseRouting();
|
|
|
|
app.UseEndpoints(ep =>
|
|
|
|
{
|
|
|
|
ep.MapControllers();
|
|
|
|
ep.MapFallbackToFile("index.html");
|
|
|
|
});
|
|
|
|
|
|
|
|
app.Run();
|