示例#1
0
        /// <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");
            }
        }
示例#2
0
 /// <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");
     }
 }
示例#3
0
        /// <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");
            }
        }