Exemplo n.º 1
0
 private void CreateTorrentManager()
 {
     if (_config.OperatingMode == OperatingMode.UnpackTorrentsFolderOnly)
     {
         _torrentManager = new FolderBasedTorrentManager(_config, _fileManager);
     }
     else
     {
         _torrentManager = new UTorrentManager(_config);
     }
 }
Exemplo n.º 2
0
        private void SetData(ITorrentManager manager, Dictionary<string, object> dictionary)
        {
            foreach(var key in dictionary.Keys)
            {
                object value = dictionary[key];

                switch(key)
                {
                    case "label":
                        manager.Label = value.ToString();
                        break;

                    case "ulrate":
                        manager.Settings.MaxUploadSpeed = Convert.ToInt32(value);
                        break;

                    case "dlrate":
                        manager.Settings.MaxDownloadSpeed = Convert.ToInt32(value);
                        break;

                    case "superseed":
                        manager.Settings.InitialSeedingEnabled = Convert.ToBoolean(value);
                        break;

                    case "dht":
                        manager.Settings.UseDht = Convert.ToBoolean(value);
                        break;

                    case "pex":
                        manager.Settings.EnablePeerExchange = Convert.ToBoolean(value);
                        break;

                    case "ulslots":
                        manager.Settings.UploadSlots = Convert.ToInt32(value);
                        break;
                }
            }
        }
Exemplo n.º 3
0
        public void RemoveTorrent(ITorrentManager manager)
        {
            var hdknManager = manager as HdknTorrentManager;

            if (hdknManager != null)
            {
                // Stop torrent

                hdknManager.Stop();

                while(hdknManager.State != HdknTorrentState.Stopped)
                    Thread.Sleep(100);

                hdknManager.Unload();

                _clientEngine.Unregister(hdknManager.Manager);

                _torrents.Remove(hdknManager.InfoHash);
            }
        }