/* * Copyright (c) 2012 Catalin Badea * Licensed under the simplified BSD license. * See Documentation/Licenses/BSD-simplified.txt for more information. */ #pragma once #include #include #include #include namespace Swift { class HistoryManager; class HistoryMessage; class JID; class HistoryController { public: HistoryController(); ~HistoryController(); void addMessage(const std::string& message, const JID& fromJID, const JID& toJID, bool isGroupChat, const boost::posix_time::ptime& timeStamp); std::vector getMessages(const JID& selfJID, const JID& contactJID, bool isGroupChat) const; void getAllContacts(const JID& selfJID, std::set& mucs, std::set& contacts) const; private: HistoryManager* localHistory_; bool remoteArchiveSupported_; }; }