#ifndef _introductionpuzzlerequester_\r
#define _introductionpuzzlerequester_\r
\r
-#include "../idatabase.h"\r
-#include "../ilogger.h"\r
-#include "ifreenetregistrable.h"\r
-#include "ifcpconnected.h"\r
-#include "ifcpmessagehandler.h"\r
-#include "iperiodicprocessor.h"\r
+#include "iindexrequester.h"\r
\r
#include <Poco/DateTime.h>\r
\r
-class IntroductionPuzzleRequester:public IFreenetRegistrable,public IFCPConnected,public IFCPMessageHandler,public IPeriodicProcessor,public IDatabase,public ILogger\r
+class IntroductionPuzzleRequester:public IIndexRequester<long>\r
{\r
public:\r
IntroductionPuzzleRequester();\r
IntroductionPuzzleRequester(FCPv2 *fcp);\r
\r
- void FCPDisconnected();\r
- void FCPConnected();\r
-\r
- const bool HandleMessage(FCPMessage &message);\r
-\r
- void RegisterWithThread(FreenetMasterThread *thread);\r
-\r
- void Process();\r
-\r
private:\r
void Initialize();\r
- void RemoveFromRequestList(const long identityid);\r
- void StartRequest(const long identityid);\r
+ void StartRequest(const long &identityid);\r
void PopulateIDList(); // clear and re-populate m_ids with identities we want to query\r
const bool HandleAllData(FCPMessage &message);\r
const bool HandleGetFailed(FCPMessage &message);\r
\r
- Poco::DateTime m_tempdate;\r
- std::string m_messagebase;\r
- int m_maxrequests;\r
- std::vector<long> m_requesting; // list of ids we are currently requesting from\r
- std::map<long,bool> m_ids; // map of all ids we know and whether we have requested file from them yet\r
- \r
};\r
\r
#endif // _introductionpuzzlerequester_\r