MockPeerStorage.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  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. };
  47. #endif // _D_MOCK_PEER_STORAGE_H_
  48. } // namespace aria2