File: MockDHTTask.h

package info (click to toggle)
aria2 1.37.0%2Bdebian-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 15,128 kB
  • sloc: cpp: 115,006; ansic: 9,140; makefile: 1,466; ruby: 475; python: 373; sh: 260; xml: 176
file content (40 lines) | stat: -rw-r--r-- 724 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#ifndef D_MOCK_DHT_TASK_H
#define D_MOCK_DHT_TASK_H

#include "DHTTask.h"

#include <cstring>

#include "DHTNode.h"
#include "DHTConstants.h"

namespace aria2 {

class MockDHTTask : public DHTTask {
public:
  std::shared_ptr<DHTNode> remoteNode_;

  unsigned char targetID_[DHT_ID_LENGTH];

  bool finished_;

  MockDHTTask(const std::shared_ptr<DHTNode>& remoteNode)
      : remoteNode_(remoteNode), finished_(false)
  {
  }

  virtual ~MockDHTTask() {}

  virtual void startup() CXX11_OVERRIDE {}

  virtual bool finished() CXX11_OVERRIDE { return finished_; }

  void setTargetID(const unsigned char* targetID)
  {
    memcpy(targetID_, targetID, DHT_ID_LENGTH);
  }
};

} // namespace aria2

#endif // D_MOCK_DHT_TASK_H