1 #ifndef _introductionpuzzle_inserter_
\r
2 #define _introductionpuzzle_inserter_
\r
4 #include "../idatabase.h"
\r
5 #include "../ilogger.h"
\r
6 #include "../datetime.h"
\r
7 #include "ifreenetregistrable.h"
\r
8 #include "ifcpconnected.h"
\r
9 #include "ifcpmessagehandler.h"
\r
10 #include "iperiodicprocessor.h"
\r
12 class IntroductionPuzzleInserter:public IFreenetRegistrable,public IFCPConnected,public IFCPMessageHandler,public IPeriodicProcessor,public IDatabase,public ILogger
\r
15 IntroductionPuzzleInserter();
\r
16 IntroductionPuzzleInserter(FCPv2 *fcp);
\r
18 void FCPConnected();
\r
19 void FCPDisconnected();
\r
21 const bool HandleMessage(FCPMessage &message);
\r
25 void RegisterWithThread(FreenetMasterThread *thread);
\r
29 void CheckForNeededInsert();
\r
30 void StartInsert(const long localidentityid);
\r
31 void GenerateCaptcha(std::string &encodeddata, std::string &solution);
\r
32 const bool HandlePutSuccessful(FCPMessage &message);
\r
33 const bool HandlePutFailed(FCPMessage &message);
\r
35 DateTime m_lastchecked;
\r
39 #endif // _introductionpuzzle_inserter_
\r