e0e974d67cf2951af125b8166a6379fc23a27531
[fms.git] / include / freenet / identityinserter.h
1 #ifndef _identity_inserter_\r
2 #define _identity_inserter_\r
3 \r
4 #include "../idatabase.h"\r
5 #include "../ilogger.h"\r
6 #include "ifreenetregistrable.h"\r
7 #include "ifcpconnected.h"\r
8 #include "ifcpmessagehandler.h"\r
9 #include "iperiodicprocessor.h"\r
10 \r
11 #include <Poco/DateTime.h>\r
12 \r
13 class IdentityInserter:public IFreenetRegistrable,public IFCPConnected,public IFCPMessageHandler,public IPeriodicProcessor,public IDatabase,public ILogger\r
14 {\r
15 public:\r
16         IdentityInserter();\r
17         IdentityInserter(FCPv2 *fcp);\r
18 \r
19         void FCPConnected();\r
20         void FCPDisconnected();\r
21 \r
22         const bool HandleMessage(FCPMessage &message);\r
23 \r
24         void Process();\r
25 \r
26         void RegisterWithThread(FreenetMasterThread *thread);\r
27 \r
28 private:\r
29         void Initialize();\r
30         void CheckForNeededInsert();\r
31         void StartInsert(const long localidentityid);\r
32 \r
33         Poco::DateTime m_lastchecked;\r
34 \r
35 };\r
36 \r
37 #endif  // _identity_inserter_\r