MockPeerStorage.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. #ifndef _D_MOCK_PEER_STORAGE_H_
  2. #define _D_MOCK_PEER_STORAGE_H_
  3. #include "PeerStorage.h"
  4. #include "Peer.h"
  5. namespace aria2 {
  6. class MockPeerStorage : public PeerStorage {
  7. private:
  8. TransferStat stat;
  9. std::deque<SharedHandle<Peer> > peers;
  10. std::deque<SharedHandle<Peer> > activePeers;
  11. public:
  12. MockPeerStorage() {}
  13. virtual ~MockPeerStorage() {}
  14. virtual bool addPeer(const SharedHandle<Peer>& peer) {
  15. peers.push_back(peer);
  16. return true;
  17. }
  18. virtual void addPeer(const std::deque<SharedHandle<Peer> >& peers) {
  19. copy(peers.begin(), peers.end(), back_inserter(this->peers));
  20. }
  21. virtual const std::deque<SharedHandle<Peer> >& getPeers() {
  22. return peers;
  23. }
  24. virtual SharedHandle<Peer> getUnusedPeer() {
  25. return 0;
  26. }
  27. virtual bool isPeerAvailable() {
  28. return false;
  29. }
  30. void setActivePeers(const std::deque<SharedHandle<Peer> >& activePeers)
  31. {
  32. this->activePeers = activePeers;
  33. }
  34. virtual std::deque<SharedHandle<Peer> > getActivePeers() {
  35. return activePeers;
  36. }
  37. virtual TransferStat calculateStat() {
  38. return stat;
  39. }
  40. void setStat(const TransferStat& stat) {
  41. this->stat = stat;
  42. }
  43. virtual void returnPeer(const SharedHandle<Peer>& peer)
  44. {
  45. }
  46. virtual bool chokeRoundIntervalElapsed()
  47. {
  48. return false;
  49. }
  50. virtual void executeChoke() {}
  51. };
  52. #endif // _D_MOCK_PEER_STORAGE_H_
  53. } // namespace aria2