version 0.3.31
[fms.git] / include / freenet / messagelistrequester.h
index 56895e2..fdeaf4d 100644 (file)
@@ -3,18 +3,36 @@
 \r
 #include "iindexrequester.h"\r
 \r
+#include <map>\r
+#include <set>\r
+\r
+#include <Poco/DateTime.h>\r
+\r
 class MessageListRequester:public IIndexRequester<long>\r
 {\r
 public:\r
-       MessageListRequester();\r
-       MessageListRequester(FCPv2 *fcp);\r
+       MessageListRequester(SQLite3DB::DB *db);\r
+       MessageListRequester(SQLite3DB::DB *db, FCPv2::Connection *fcp);\r
 \r
 private:\r
-       void Initialize();\r
-       void PopulateIDList();\r
+       virtual void Initialize();\r
+       virtual void PopulateIDList();\r
        void StartRequest(const long &id);\r
-       const bool HandleAllData(FCPMessage &message);\r
-       const bool HandleGetFailed(FCPMessage &message);\r
+       void StartRedirectRequest(FCPv2::Message &message);\r
+       const bool HandleAllData(FCPv2::Message &message);\r
+       const bool HandleGetFailed(FCPv2::Message &message);\r
+       void GetBoardList(std::map<std::string,bool> &boards, const bool forceload=false);\r
+       const bool CheckDateNotFuture(const std::string &datestr) const;\r
+       const bool CheckDateWithinMaxDays(const std::string &datestr) const;\r
+\r
+       bool m_localtrustoverrides;\r
+       bool m_savetonewboards;\r
+       long m_messagedownloadmaxdaysbackward;\r
+\r
+       std::map<std::string,bool> m_boardscache;\r
+       Poco::DateTime m_boardscacheupdate;                     // last time we updated the boards cache\r
+\r
+       std::map<std::string,std::map<long,std::set<long> > > m_requestindexcache;      // date - identity id - index\r
 \r
 };\r
 \r