Пример #1
0
 private static void HandleAlertCallback(Core.Alert a)
 {
     using (a)
     {
         Action <object> run;
         if (Alert2Func.TryGetValue(a.GetType(), out run))
         {
             run(a);
         }
     }
 }
Пример #2
0
        private void HandlePendingAlertCallback(Core.Alert a)
        {
            log.Trace("libtorrent event {0}: {1}", a.what(), a.message());
            if (!alertType.ContainsKey(a.GetType()))
            {
                return;
            }
            switch (alertType[a.GetType()])
            {
            case 0:
                TorrentAddedAlert((Core.torrent_added_alert)a);
                break;

            case 1:
                OnTorrentUpdateAlert((Core.state_update_alert)a);
                break;

            case 2:     // torrent_paused_alert
                break;

            case 3:     // torrent_resumed_alert
                break;

            case 4:     // torrent_removed_alert
                break;

            case 5:     // torrent_deleted_alert
                break;

            case 6:     // torrent_error_alert
                break;

            case 7:     // dht_stats_alert
                break;

            case 8:     // dht_bootstrap_alert
                break;

            case 9:
                OnSaveResumeDataAlert((Core.save_resume_data_alert)a);
                break;

            case 10:
                OnSaveResumeDataFailedAlert((Core.save_resume_data_failed_alert)a);
                break;

            case 11:     // piece_finished_alert
                break;

            default:
                break;
            }
        }