Files
Server/OwnChar.Server/Program.cs
2024-08-23 11:58:07 +02:00

43 lines
1.1 KiB
C#

using Castle.Core.Logging;
using OwnChar.Api;
namespace OwnChar.Server;
internal class Program
{
public static void Main(string[] args)
{
var options = new ServerOptions(args);
var appTempFolder = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "OwnChar", "Server");
// Load log
Directory.CreateDirectory(appTempFolder);
using var fsLog = File.OpenWrite(Path.Combine(appTempFolder, "Log.log"));
var log = new StreamLogger("OwnChar Server", fsLog);
// Check paramters
if (!options.IsValid())
{
log.Error("Parameters are invalid or not configured. Can not start server app.");
return;
}
// Create server context
var server = new OwnCharApiServer(options.ApiUrl, options.DbServer, options.DbDatabase, options.DbUser, options.DbPassword)
{
Log = log
};
// Start server
server.Start();
// Wait for exit
Console.WriteLine("Server started. Press any key to stop.");
Console.ReadKey();
// Stop server
server.Stop();
}
}