Exemple #1
0
        private void EnterSeedMode()
        {
            ChangeState(TorrentState.Seeding);
            var mode = new SeedMode(Mode);

            mode.RaisedException += (s, e) => OnRaisedException(e.Value);
            mode.Start();
            Mode = mode;
            AnnounceManager.Started();
        }
        private void EnterDownloadMode()
        {   //промяна на състоянието - информира потребителския интерфейс
            ChangeState(TorrentState.Downloading);
            var mode = new DownloadMode((HashingMode)Mode);

            //прикачане на обработваш код към събитията за получено изключение,
            //завършено изтегляне, и приключило записване на диска
            mode.RaisedException  += (s, e) => OnRaisedException(e.Value);
            mode.FlushedToDisk    += (s, e) => FlushedToDisk();
            mode.DownloadComplete += (s, e) => DownloadCompleted();
            //стартиране на режима
            mode.Start();
            Mode = mode;
            //информиране на тракера
            AnnounceManager.Started();
        }