/// <summary> /// event-worker for JournalEventRecieved-event /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public async void JournalEventRecievedAsync(object sender, FileScanner.EDJournalScanner.JournalEventArgs e) { try { switch (e.EventType) { case FileScanner.EDJournalScanner.JournalEvent.Docked: RestTimeReset(); SetDocked(true); if ((!Program.actualCondition.System.EqualsNullOrEmpty(e.Data.Value <String>("StarSystem"))) || (!Program.actualCondition.Station.EqualsNullOrEmpty(e.Data.Value <String>("StationName")))) { var t = new Task(() => RefreshAndImport(true, false)); t.Start(); await t; } break; case FileScanner.EDJournalScanner.JournalEvent.Undocked: RestTimeReset(); if ((!Program.actualCondition.System.EqualsNullOrEmpty(e.Data.Value <String>("StarSystem"))) || (!Program.actualCondition.Station.EqualsNullOrEmpty(e.Data.Value <String>("StationName")))) { var t = new Task(() => RefreshAndImport(false, true)); t.Start(); await t; } SetDocked(false); break; case FileScanner.EDJournalScanner.JournalEvent.FSDJump: // can't be docked anymore SetDocked(false); /// after a system jump you can get data immediately RestTimeReset(); break; } } catch (Exception ex) { CErr.processError(ex, "Error while processing the JournalEventRecieved-event"); } }
/// <summary> /// event-worker for JournalEventRecieved-event /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void JournalEventRecieved(object sender, FileScanner.EDJournalScanner.JournalEventArgs e) { try { if (e.EventType == FileScanner.EDJournalScanner.JournalEvent.FSDJump) { TransmitVisit(e.Data.Value <String>("StarSystem"), (Double)e.Data["StarPos"][0], (Double)e.Data["StarPos"][1], (Double)e.Data["StarPos"][2], e.Data.Value <DateTime>("timestamp")); } } catch (Exception ex) { CErr.processError(ex, "Error while processing the JournalEventRecieved-event"); } }
/// <summary> /// event-worker for JournalEventRecieved-event /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public async void JournalEventRecievedAsync(object sender, FileScanner.EDJournalScanner.JournalEventArgs e) { try { switch (e.EventType) { case FileScanner.EDJournalScanner.JournalEvent.Docked: RestTimeReset(); SetDocked(true); var t1 = new Task(() => RefreshAndImport(true, false)); t1.Start(); await t1; break; case FileScanner.EDJournalScanner.JournalEvent.Undocked: RestTimeReset(); var t = new Task(() => RefreshAndImport(false, true)); t.Start(); await t; SetDocked(false); break; case FileScanner.EDJournalScanner.JournalEvent.FSDJump: // can't be docked anymore SetDocked(false); /// after a system jump you can get data immediately RestTimeReset(); break; } } catch (Exception ex) { CErr.processError(ex, "Error while processing the JournalEventRecieved-event"); } }