2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>

Added "downloadSpeed" and uploadSpeed" key in getPeers response.	
	* src/DefaultPeerStorage.cc
	* src/DefaultPeerStorage.h
	* src/PeerStorage.h
	* src/XmlRpcMethodImpl.cc
	* test/MockPeerStorage.h
pull/1/head
Tatsuhiro Tsujikawa 2009-05-12 16:16:13 +00:00
parent 64945c1f03
commit 5983e3e9d9
6 changed files with 27 additions and 0 deletions

View File

@ -1,3 +1,12 @@
2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added "downloadSpeed" and uploadSpeed" key in getPeers response.
* src/DefaultPeerStorage.cc
* src/DefaultPeerStorage.h
* src/PeerStorage.h
* src/XmlRpcMethodImpl.cc
* test/MockPeerStorage.h
2009-05-13 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Put a call to Socket::isReadable() in try block.

View File

@ -246,6 +246,12 @@ void DefaultPeerStorage::updateTransferStatFor(const SharedHandle<Peer>& peer)
_peerTransferStatMap[peer->getID()] = s;
}
TransferStat DefaultPeerStorage::getTransferStatFor
(const SharedHandle<Peer>& peer)
{
return _peerTransferStatMap[peer->getID()];
}
void DefaultPeerStorage::deleteUnusedPeer(size_t delSize) {
Peers temp;
for(Peers::reverse_iterator itr = peers.rbegin();

View File

@ -98,6 +98,8 @@ public:
virtual void updateTransferStatFor(const SharedHandle<Peer>& peer);
virtual TransferStat getTransferStatFor(const SharedHandle<Peer>& peer);
virtual void returnPeer(const SharedHandle<Peer>& peer);
virtual bool chokeRoundIntervalElapsed();

View File

@ -87,6 +87,8 @@ public:
virtual void updateTransferStatFor(const SharedHandle<Peer>& peer) = 0;
virtual TransferStat getTransferStatFor(const SharedHandle<Peer>& peer) = 0;
/**
* Tells PeerStorage object that peer is no longer used in the session.
*/

View File

@ -210,6 +210,9 @@ static void gatherPeer(BDE& peers, const SharedHandle<PeerStorage>& ps)
(*i)->getBitfieldLength());
peerEntry["amChoking"] = (*i)->amChoking()?BDE("true"):BDE("false");
peerEntry["peerChoking"] = (*i)->peerChoking()?BDE("true"):BDE("false");
TransferStat stat = ps->getTransferStatFor(*i);
peerEntry["downloadSpeed"] = Util::uitos(stat.getDownloadSpeed());
peerEntry["uploadSpeed"] = Util::uitos(stat.getUploadSpeed());
peers << peerEntry;
}
}

View File

@ -73,6 +73,11 @@ public:
virtual void updateTransferStatFor(const SharedHandle<Peer>& peer) {}
virtual TransferStat getTransferStatFor(const SharedHandle<Peer>& peer)
{
return TransferStat();
}
int getNumChokeExecuted() const
{
return _numChokeExecuted;