diff --git a/include/transport/vcardresponder.h b/include/transport/vcardresponder.h index fc4fb4c762a92ed192a30ceb7dfe0bb5e9a4fba7..2618a897f1117585d442ceb1bee63558d934a226 100644 --- a/include/transport/vcardresponder.h +++ b/include/transport/vcardresponder.h @@ -33,7 +33,7 @@ class User; class VCardResponder : public Swift::Responder { public: - VCardResponder(Swift::IQRouter *router, UserManager *userManager); + VCardResponder(Swift::IQRouter *router, Swift::NetworkFactories *factories, UserManager *userManager); ~VCardResponder(); void sendVCard(unsigned int id, boost::shared_ptr vcard); @@ -41,11 +41,14 @@ class VCardResponder : public Swift::Responder { boost::signal onVCardRequired; boost::signal vcard)> onVCardUpdated; + void collectTimeouted(); + private: struct VCardData { Swift::JID from; Swift::JID to; std::string id; + time_t received; }; virtual bool handleGetRequest(const Swift::JID& from, const Swift::JID& to, const std::string& id, boost::shared_ptr payload); @@ -53,6 +56,7 @@ class VCardResponder : public Swift::Responder { UserManager *m_userManager; std::map m_queries; unsigned int m_id; + Swift::Timer::ref m_collectTimer; }; } \ No newline at end of file