using System; using System.Threading.Tasks; using Comal.TaskScheduler.Shared; using InABox.IPC; using InABox.Clients; using InABox.Core; using InABox.Rpc; using PRSServices; namespace PRSServer; internal class ScheduleEngine : Engine { private readonly Scheduler scheduler = new(); public override void Run() { try { if (string.IsNullOrWhiteSpace(Properties.Server)) { Logger.Send(LogType.Error, "", "Server is blank!"); return; } InitialiseConnection(Properties.Server, Platform.SchedulerEngine); Logger.Send(LogType.Information, "", "Starting Scheduler: "); scheduler.Start(); } catch (Exception ex) { Logger.Send(LogType.Error, "", "Error: " + ex.Message + "\n" + ex.StackTrace); throw; } } public override void Stop() { scheduler.Stop(); } }