Decode() public static method

public static Decode ( BEncodedList peers ) : MonoTorrentCollection
peers BEncodedList
return MonoTorrentCollection
Esempio n. 1
0
        protected virtual void HandlePeerExchangeMessage(PeerId id, PeerExchangeMessage message)
        {
            // Ignore peer exchange messages on private torrents
            if (id.TorrentManager.Torrent.IsPrivate || !id.TorrentManager.Settings.EnablePeerExchange)
            {
                return;
            }

            // If we already have lots of peers, don't process the messages anymore.
            if ((Manager.Peers.AvailableCount + Manager.OpenConnections) >= _manager.Settings.MaxConnections)
            {
                return;
            }

            IList <Peer> peers = Peer.Decode(message.Added);
            var          count = id.TorrentManager.AddPeersCore(peers);

            id.TorrentManager.RaisePeersFound(new PeerExchangePeersAdded(id.TorrentManager, count, peers.Count, id));
        }