static void Main(string[] args) { // Uncomment this line of code to allow for debugging //while (!System.Diagnostics.Debugger.IsAttached) { System.Threading.Thread.Sleep(100); } Logger.Instance.LogMessage(TracingLevel.INFO, "Init Elite Api"); try { GetKeyBindings(null); var journalPath = StandardDirectory.FullName; Logger.Instance.LogMessage(TracingLevel.INFO, "journal path " + journalPath); if (!Directory.Exists(journalPath)) { Logger.Instance.LogMessage(TracingLevel.FATAL, $"Directory doesn't exist {journalPath}"); } var defaultFilter = @"Journal.*.log"; //#if DEBUG //defaultFilter = @"JournalAlpha.*.log"; //#endif StatusWatcher = new StatusWatcher(journalPath); StatusWatcher.StatusUpdated += EliteData.HandleStatusEvents; StatusWatcher.StartWatching(); JournalWatcher = new JournalWatcher(journalPath, defaultFilter); JournalWatcher.AllEventHandler += EliteData.HandleEliteEvents; JournalWatcher.StartWatching().Wait(); CargoWatcher = new CargoWatcher(journalPath); CargoWatcher.CargoUpdated += EliteData.HandleCargoEvents; CargoWatcher.StartWatching(); } catch (Exception ex) { Logger.Instance.LogMessage(TracingLevel.FATAL, $"Elite Api: {ex}"); } //EliteAPI.Events.AllEvent += (sender, e) => Console.Beep(); Profile.ReadProfiles(); SDWrapper.Run(args); }
/// <summary> /// Resets the API. /// </summary> public void Reset() { //Reset services. try { Events = new Events.EventHandler(); } catch (Exception ex) { Logger.Log(Severity.Warning, "Couldn't instantiate service 'Events'.", ex); } try { Commander = new CommanderStatus(this); } catch (Exception ex) { Logger.Log(Severity.Warning, "Couldn't instantiate service 'Commander'.", ex); } try { Location = new LocationStatus(this); } catch (Exception ex) { Logger.Log(Severity.Warning, "Couldn't instantiate service 'Location'.", ex); } try { DiscordRichPresence = new RichPresenceClient(this); } catch (Exception ex) { Logger.Log(Severity.Warning, "Couldn't instantiate service 'DiscordRichPresence'.", ex); } try { StatusWatcher = new StatusWatcher(this); } catch (Exception ex) { Logger.Log(Severity.Warning, "Couldn't instantiate service 'StatusWatcher'.", ex); } try { CargoWatcher = new CargoWatcher(this); } catch (Exception ex) { Logger.Log(Severity.Warning, "Couldn't instantiate service 'CargoWatcher'.", ex); } try { Status = EliteAPI.Status.GameStatus.FromFile(new FileInfo(JournalDirectory + "//Status.json"), this); } catch (Exception ex) { Logger.Log(Severity.Warning, "Couldn't instantiate service 'Status'.", ex); } try { JournalParser = new JournalParser(this); } catch (Exception ex) { Logger.Log(Severity.Warning, "Couldn't instantiate service 'JournalParser'.", ex); } try { MaterialWatcher = new MaterialWatcher(this); } catch (Exception ex) { Logger.Log(Severity.Warning, "Couldn't instantiate service 'MaterialWatcher'.", ex); } JournalParser.processedLogs = new List <string>(); }