mirror of
https://github.com/aria2/aria2.git
synced 2025-02-18 21:27:34 +00:00
![Tatsuhiro Tsujikawa](/assets/img/avatar_default.png)
Rewritten choking algorithm. * src/PeerChokeCommand.{cc, h} * src/BtInterestedMessage.cc * src/PeerSessionResource.{cc, h} * src/DefaultPeerStorage.{cc, h} * src/BtNotInterestedMessage.cc * src/DefaultBtMessageDispatcher.{cc, h} * src/BtMessageDispatcher.h * src/Peer.{cc, h} * src/BtLeecherStateChoke.{cc, h} * src/BtSetup.cc * src/BtSeederStateChoke.{cc, h} * src/PeerStorage.h * test/MockPeerStorage.h * test/MockBtMessageDispatcher.h
70 lines
1.7 KiB
C++
70 lines
1.7 KiB
C++
#ifndef _D_MOCK_BT_MESSAGE_DISPATCHER_H_
|
|
#define _D_MOCK_BT_MESSAGE_DISPATCHER_H_
|
|
|
|
#include "BtMessageDispatcher.h"
|
|
#include <algorithm>
|
|
|
|
namespace aria2 {
|
|
|
|
class MockBtMessageDispatcher : public BtMessageDispatcher {
|
|
public:
|
|
BtMessages messageQueue;
|
|
|
|
virtual ~MockBtMessageDispatcher() {}
|
|
|
|
virtual void addMessageToQueue(const SharedHandle<BtMessage>& btMessage) {
|
|
messageQueue.push_back(btMessage);
|
|
}
|
|
|
|
virtual void addMessageToQueue(const std::deque<SharedHandle<BtMessage> >& btMessages) {
|
|
std::copy(btMessages.begin(), btMessages.end(), back_inserter(messageQueue));
|
|
}
|
|
|
|
virtual void sendMessages() {}
|
|
|
|
virtual void doCancelSendingPieceAction(size_t index, uint32_t begin, size_t length) {}
|
|
|
|
virtual void doCancelSendingPieceAction(const SharedHandle<Piece>& piece) {}
|
|
|
|
virtual void doAbortOutstandingRequestAction(const SharedHandle<Piece>& piece) {}
|
|
|
|
virtual void doChokedAction() {}
|
|
|
|
virtual void doChokingAction() {}
|
|
|
|
virtual void checkRequestSlotAndDoNecessaryThing() {}
|
|
|
|
virtual bool isSendingInProgress() {
|
|
return false;
|
|
}
|
|
|
|
virtual size_t countMessageInQueue() {
|
|
return messageQueue.size();
|
|
}
|
|
|
|
virtual size_t countOutstandingRequest() {
|
|
return 0;
|
|
}
|
|
|
|
virtual bool isOutstandingRequest(size_t index, size_t blockIndex) {
|
|
return false;
|
|
}
|
|
|
|
virtual RequestSlot getOutstandingRequest(size_t index, uint32_t begin, size_t length) {
|
|
return RequestSlot::nullSlot;
|
|
}
|
|
|
|
virtual void removeOutstandingRequest(const RequestSlot& slot) {}
|
|
|
|
virtual void addOutstandingRequest(const RequestSlot& slot) {}
|
|
|
|
virtual size_t countOutstandingUpload()
|
|
{
|
|
return 0;
|
|
}
|
|
};
|
|
|
|
} // namespace aria2
|
|
|
|
#endif // _D_MOCK_BT_MESSAGE_DISPATCHER_H_
|