| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 | 
							- using System;
 
- using System.Threading.Tasks;
 
- using Comal.Classes;
 
- using Comal.Stores;
 
- using InABox.IPC;
 
- using InABox.Clients;
 
- using InABox.Configuration;
 
- using InABox.Core;
 
- using InABox.Wpf.Reports;
 
- namespace PRSServer
 
- {
 
-     public class WebEngine : Engine<WebServerProperties>
 
-     {
 
-         private WebListener listener;
 
-         public override void Configure(Server server)
 
-         {
 
-             base.Configure(server);
 
-             Logger.Send(LogType.Information, "", "Configuring...");
 
-         }
 
-         public override async void Run()
 
-         {
 
-             Logger.Send(LogType.Information, "", "Starting..");
 
-             if (string.IsNullOrWhiteSpace(Properties.Server))
 
-             {
 
-                 Logger.Send(LogType.Error, "", "Server is blank!");
 
-                 return;
 
-             }
 
-             ClientFactory.SetClientType(typeof(IPCClient<>), Platform.WebEngine, Version, DatabaseServerProperties.GetPipeName(Properties.Server));
 
-             Logger.Send(LogType.Information, "", "Registering Classes");
 
-             StoreUtils.RegisterClasses();
 
-             CoreUtils.RegisterClasses();
 
-             ComalUtils.RegisterClasses();
 
-             ReportUtils.RegisterClasses();
 
-             ConfigurationUtils.RegisterClasses();
 
-             while (!Client.Ping())
 
-             {
 
-                 Logger.Send(LogType.Error, "", "Database server unavailable. Trying again in 30 seconds...");
 
-                 await Task.Delay(30_000);
 
-                 Logger.Send(LogType.Information, "", "Retrying connection...");
 
-             }
 
-             ClientFactory.SetBypass();
 
-             try
 
-             {
 
-                 listener?.Stop();
 
-                 listener = new WebListener(new WebHandlerProperties(Properties.MaxFileSize, (ulong)Properties.LoginExpiry * 3600));
 
-                 listener.InitHTTPS((ushort)Properties.ListenPort, CertificateFileName());
 
-                 Logger.Send(LogType.Information, "", "Starting Web Listener on port " + Properties.ListenPort);
 
-                 listener.Start();
 
-             }
 
-             catch (Exception eListen)
 
-             {
 
-                 Logger.Send(LogType.Error, ClientFactory.UserID, eListen.Message);
 
-             }
 
-         }
 
-         public override void Stop()
 
-         {
 
-             Logger.Send(LogType.Information, "", "Stopping..");
 
-             listener?.Stop();
 
-         }
 
-         private string CertificateFileName() =>
 
-             !string.IsNullOrWhiteSpace(Properties.CertificateFile)
 
-             ? Properties.CertificateFile
 
-             : CertificateEngine.CertificateFile;
 
-     }
 
- }
 
 
  |