private static void Main(string[] args) { XmlConfigurator.ConfigureAndWatch(new FileInfo("log4net_server.config")); Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; Thread.CurrentThread.Name = "Entry"; Settings = new SimpleSettings("server"); Database = new Database( Settings.GetValue <string>("db_host", "127.0.0.1"), Settings.GetValue <string>("db_database", "rotmgprod"), Settings.GetValue <string>("db_user", "root"), Settings.GetValue <string>("db_auth", "lord2yUkarI81!dd@cha")); GameData = new XmlData(); InstanceId = Guid.NewGuid().ToString(); Console.CancelKeyPress += (sender, e) => e.Cancel = true; var port = Settings.GetValue <int>("port", "8080"); if (RunPreCheck(port)) { listener = new HttpListener(); listener.Prefixes.Add($"http://*:{port}/"); listener.Start(); listener.BeginGetContext(ListenerCallback, null); Logger.Info($"Listening at port {port}..."); } else { Logger.Error($"Port {port} is occupied. Can't start listening...\nPress ESC to exit."); } while (Console.ReadKey(true).Key != ConsoleKey.Escape) { ; } Logger.Info("Terminating..."); //To prevent a char/list account in use if //both servers are closed at the same time while (currentRequests.Count > 0) { ; } listener?.Stop(); GameData.Dispose(); Settings.Dispose(); }
private static void Main(string[] args) { XmlConfigurator.ConfigureAndWatch(new FileInfo("log4net_server.config")); Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture; Thread.CurrentThread.Name = "Entry"; Settings = new SimpleSettings("server"); Database = new Database( Settings.GetValue("dbHost", "127.0.0.1"), Settings.GetValue("dbName", "fluffyadventure"), Settings.GetValue("dbUser", "root"), Settings.GetValue("dbPassword", "")); GameData = new XmlData(); var port = Settings.GetValue <int>("port", "8080"); listener = new HttpListener(); listener.Prefixes.Add($"http://*:{port}/"); listener.Start(); listener.BeginGetContext(ListenerCallback, null); Console.CancelKeyPress += (sender, e) => e.Cancel = true; Logger.Info("Listening at port " + port + "..."); while (Console.ReadKey(true).Key != ConsoleKey.Escape) { ; } Logger.Info("Terminating..."); while (currentRequests.Count > 0) { ; } listener.Stop(); GameData.Dispose(); Settings.Dispose(); }
public void Dispose() { settings.Dispose(); }