Author: alanmc
Date: 2007-05-29 14:55:27 -0400 (Tue, 29 May 2007)
New Revision: 78155
Modified:
trunk/bitsharp/src/MonoTorrent/Tracker/PeerManager.cs
trunk/bitsharp/src/MonoTorrent/Tracker/SimpleTorrentManager.cs
Log:
Must re-do collections a little
Modified: trunk/bitsharp/src/MonoTorrent/Tracker/PeerManager.cs
===================================================================
--- trunk/bitsharp/src/MonoTorrent/Tracker/PeerManager.cs 2007-05-29
18:44:29 UTC (rev 78154)
+++ trunk/bitsharp/src/MonoTorrent/Tracker/PeerManager.cs 2007-05-29
18:55:27 UTC (rev 78155)
@@ -37,12 +37,12 @@
///</summary>
public class PeerManager
{
- PeerCollection peer_list;//same as _peers but no indexed. used for
index based peer retrieval for randomization
+ List<Peer> peer_list;//same as _peers but no indexed. used for index
based peer retrieval for randomization
Dictionary<string, Peer> peer_dict;//hold the list of peers attatched
to this torrent
public PeerManager()
{
- peer_list = new PeerCollection();
+ peer_list = new List<Peer>();
peer_dict = new Dictionary<string, Peer>();
}
@@ -96,9 +96,9 @@
///</summary>
///<param name=exclude>do not include this peer in the resulting
list.</parm>
///<param name=count>return at most count peers</param>
- public PeerCollection GetRandomPeers(int count, Peer exclude)
+ public List<Peer> GetRandomPeers(int count, Peer exclude)
{
- PeerCollection randomPeers = new PeerCollection(count);
+ List<Peer> randomPeers = new List<Peer>(count);
if (peer_list.Count == 0) {
return randomPeers;
}
@@ -127,9 +127,9 @@
}
///<summary>returns all peers from this Manager but not
exlcude</summary>
- private PeerCollection GetAllPeers(Peer exclude)
+ private List<Peer> GetAllPeers(Peer exclude)
{
- PeerCollection randomPeers = new PeerCollection(peer_list.Count);
+ List<Peer> randomPeers = new List<Peer>(peer_list.Count);
foreach(Peer p in peer_list) {
if (exclude != null && !exclude.Equals(p)) {
randomPeers.Add(p);
Modified: trunk/bitsharp/src/MonoTorrent/Tracker/SimpleTorrentManager.cs
===================================================================
--- trunk/bitsharp/src/MonoTorrent/Tracker/SimpleTorrentManager.cs
2007-05-29 18:44:29 UTC (rev 78154)
+++ trunk/bitsharp/src/MonoTorrent/Tracker/SimpleTorrentManager.cs
2007-05-29 18:55:27 UTC (rev 78155)
@@ -156,7 +156,7 @@
if (peers.Contains(Peer.GetKey(par))) {
exclude = peers.Get(Peer.GetKey(par));
}
- PeerCollection randomPeers =
peers.GetRandomPeers(par.numberWanted, exclude);
+ List<Peer> randomPeers = peers.GetRandomPeers(par.numberWanted,
exclude);
byte[] peersBuffer = new byte[randomPeers.Count * 6];
int offset = 0;
Debug.WriteLine("number of peers returned: " + randomPeers.Count);
@@ -174,8 +174,8 @@
//TODO refactor: done - not debuged
private BEncodedValue GetNonCompactList(AnnounceParameters par)
{
- Peer exclude = peers.Get(Peer.GetKey(par));
- PeerCollection randomPeers =
peers.GetRandomPeers(par.numberWanted, exclude);
+ Peer exclude = peers.Get(Peer.GetKey(par));
+ List<Peer> randomPeers = peers.GetRandomPeers(par.numberWanted,
exclude);
BEncodedList announceList = new BEncodedList(randomPeers.Count);
foreach (Peer each in randomPeers) {
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches