Removed NioTSO client and server

- NioTSO client isn't needed because we're using RayLib
- Added FreeSO's API server to handle most backend operations
This commit is contained in:
Tony Bark 2024-05-01 02:55:43 -04:00
parent f12ba1502b
commit 22191ce648
591 changed files with 53264 additions and 3362 deletions

View file

@ -0,0 +1,53 @@
using FSO.Server.Common;
using Microsoft.AspNetCore;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Logging;
namespace FSO.Server.Api.Core
{
public class Program
{
public static void Main(string[] args)
{
var host = CreateWebHostBuilder(args).Build();
host.Run();
}
public static IAPILifetime RunAsync(string[] args)
{
var host = CreateWebHostBuilder(args).Build();
var lifetime = new APIControl((IApplicationLifetime)host.Services.GetService(typeof(IApplicationLifetime)));
host.Start();
return lifetime;
}
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseUrls(args[0])
.ConfigureLogging(x =>
{
x.SetMinimumLevel(LogLevel.None);
})
.UseKestrel(options =>
{
options.Limits.MaxRequestBodySize = 500000000;
})
.SuppressStatusMessages(true)
.UseStartup<Startup>();
}
public class APIControl : IAPILifetime
{
private IApplicationLifetime Lifetime;
public APIControl(IApplicationLifetime lifetime)
{
Lifetime = lifetime;
}
public void Stop()
{
Lifetime.StopApplication();
}
}
}