version 0.0.2
[fms.git] / include / freenet / trustlistinserter.h
diff --git a/include/freenet/trustlistinserter.h b/include/freenet/trustlistinserter.h
new file mode 100644 (file)
index 0000000..ca599dd
--- /dev/null
@@ -0,0 +1,37 @@
+#ifndef _trustlistinserter_\r
+#define _trustlistinserter_\r
+\r
+#include "../idatabase.h"\r
+#include "../ilogger.h"\r
+#include "../datetime.h"\r
+#include "ifreenetregistrable.h"\r
+#include "ifcpconnected.h"\r
+#include "ifcpmessagehandler.h"\r
+#include "iperiodicprocessor.h"\r
+\r
+class TrustListInserter:public IFreenetRegistrable,public IFCPConnected,public IFCPMessageHandler,public IPeriodicProcessor,public IDatabase,public ILogger\r
+{\r
+public:\r
+       TrustListInserter();\r
+       TrustListInserter(FCPv2 *fcp);\r
+\r
+       void FCPConnected();\r
+       void FCPDisconnected();\r
+\r
+       const bool HandleMessage(FCPMessage &message);\r
+\r
+       void Process();\r
+\r
+       void RegisterWithThread(FreenetMasterThread *thread);\r
+\r
+private:\r
+       void Initialize();\r
+       void CheckForNeededInsert();\r
+       void StartInsert(const long localidentityid, const std::string &privatekey);\r
+\r
+       std::string m_messagebase;\r
+       DateTime m_lastchecked;\r
+       \r
+};\r
+\r
+#endif // _trustlistinserter_\r