version 0.3.31
[fms.git] / include / freenet / messagelistrequester.h
index 079fbe7..fdeaf4d 100644 (file)
@@ -4,6 +4,9 @@
 #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
@@ -18,7 +21,7 @@ private:
        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);\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
@@ -26,6 +29,11 @@ private:
        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
 #endif // _messagelistrequester_\r