Files
FreeSR/FreeSR.Admin/AdminServer.cs
moux23333 396cf2de7f 1.6.55
2024-01-27 21:08:24 +08:00

51 lines
2.0 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
namespace FreeSR.Admin
{
using FreeSR.Admin.Command.Handlers;
using FreeSR.Admin.Service;
using FreeSR.Shared.Command;
using FreeSR.Shared.Configuration;
using FreeSR.Shared.Exceptions;
using NLog;
internal static class AdminServer
{
private static readonly Logger s_log = LogManager.GetCurrentClassLogger();
private static void Main(string[] args)
{
Directory.SetCurrentDirectory(AppContext.BaseDirectory);
AppDomain.CurrentDomain.UnhandledException += OnFatalException;
Console.WriteLine("FreeSR is a free and open-source software, if you paid for this, you have been scammed!");
Console.WriteLine("FreeSR是一个免费且开源的软件如果你是花钱买来的则说明你被骗了");
Console.WriteLine("https://git.xeondev.com/Moux23333/FreeSR");
s_log.Info("Initializing...");
CommandManager.Instance.Initialize(typeof(AccountCommandCategory));
ConfigurationManager<AdminServerConfiguration>.Instance.Initialize("AdminServer.json");
var serverConfiguration = ConfigurationManager<AdminServerConfiguration>.Instance.Model;
HttpAdminService.Initialize(serverConfiguration.Network);
s_log.Info("Server is ready!");
Thread.Sleep(-1);
}
private static void OnFatalException(object sender, UnhandledExceptionEventArgs args)
{
if (args.ExceptionObject is ServerInitializationException initException)
{
Console.WriteLine("Server initialization failed, unhandled exception!");
Console.WriteLine(initException);
}
else
{
Console.WriteLine("Unhandled exception in runtime!");
Console.WriteLine(args.ExceptionObject);
}
Console.WriteLine("Press enter to close this window...");
Console.ReadLine();
}
}
}