X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;ds=sidebyside;f=include%2Ffreenet%2Fmessagelistrequester.h;h=fdeaf4dd6ed817a4670bf9d37524acaeddcddb96;hb=9ae3b1434e51788e6feb72e1415ec800d05c535a;hp=ccd463c80011cda77dc7c75ccf44307ba9bfbaed;hpb=e662ea47fba8715474851ceebacba400984ee433;p=fms.git diff --git a/include/freenet/messagelistrequester.h b/include/freenet/messagelistrequester.h index ccd463c..fdeaf4d 100644 --- a/include/freenet/messagelistrequester.h +++ b/include/freenet/messagelistrequester.h @@ -4,21 +4,24 @@ #include "iindexrequester.h" #include +#include + +#include class MessageListRequester:public IIndexRequester { public: - MessageListRequester(); - MessageListRequester(FCPv2 *fcp); + MessageListRequester(SQLite3DB::DB *db); + MessageListRequester(SQLite3DB::DB *db, FCPv2::Connection *fcp); private: virtual void Initialize(); virtual void PopulateIDList(); void StartRequest(const long &id); - void StartRedirectRequest(FCPMessage &message); - const bool HandleAllData(FCPMessage &message); - const bool HandleGetFailed(FCPMessage &message); - void GetBoardList(std::map &boards); + void StartRedirectRequest(FCPv2::Message &message); + const bool HandleAllData(FCPv2::Message &message); + const bool HandleGetFailed(FCPv2::Message &message); + void GetBoardList(std::map &boards, const bool forceload=false); const bool CheckDateNotFuture(const std::string &datestr) const; const bool CheckDateWithinMaxDays(const std::string &datestr) const; @@ -26,6 +29,11 @@ private: bool m_savetonewboards; long m_messagedownloadmaxdaysbackward; + std::map m_boardscache; + Poco::DateTime m_boardscacheupdate; // last time we updated the boards cache + + std::map > > m_requestindexcache; // date - identity id - index + }; #endif // _messagelistrequester_