| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 | using Comal.Classes;using Comal.Stores;using InABox.Clients;using InABox.Configuration;using InABox.Core;using InABox.Rpc;using InABox.Wpf.Reports;using InABox.WPF;using PRS.Shared;using PRSServer;using PRSServices;using System;using System.Threading;using System.Threading.Tasks;namespace PRSLicensing;public class LicensingEngine : Engine<LicensingEngineProperties>{    private Listener<LicensingHandler, LicensingHandlerProperties> listener;    public override void Run()    {        Logger.Send(LogType.Information, "", "Starting..");        if (string.IsNullOrWhiteSpace(Properties.Server))        {            Logger.Send(LogType.Error, "", "Server is blank!");            return;        }        InitialiseConnection(Properties.Server, Platform.LicensingEngine);                Logger.Send(LogType.Information, "", "Registering Classes");        StoreUtils.RegisterClasses();        CoreUtils.RegisterClasses();        ComalUtils.RegisterClasses();        PRSSharedUtils.RegisterClasses();        ReportUtils.RegisterClasses();        WPFUtils.RegisterClasses();        ConfigurationUtils.RegisterClasses();        Logger.Send(LogType.Information, "", "Starting Web Listener on port " + Properties.ListenPort);        try        {            listener = new Listener<LicensingHandler, LicensingHandlerProperties>(new LicensingHandlerProperties(Properties));            listener.InitHTTPS((ushort)Properties.ListenPort, CertificateFileName());            listener.Start();        }        catch (Exception eListen)        {            Logger.Send(LogType.Error, ClientFactory.UserID, eListen.Message);        }    }    private string CertificateFileName() => Properties.CertificateFile;    public override void Stop()    {        Logger.Send(LogType.Information, "", "Stopping");        listener?.Stop();    }}
 |