/*
* Copyright (c) 2010 Remko Tronçon
* Licensed under the GNU General Public License v3.
* See Documentation/Licenses/GPLv3.txt for more information.
*/
#pragma once
#include <boost/optional.hpp>
#include <Swiften/History/HistoryManager.h>
struct sqlite3;
namespace Swift {
class SQLiteHistoryManager : public HistoryManager {
public:
SQLiteHistoryManager(const std::string& file);
~SQLiteHistoryManager();
virtual void addMessage(const HistoryMessage& message);
virtual std::vector<HistoryMessage> getMessages() const;
int getIDForJID(const JID&);
int addJID(const JID&);
boost::optional<JID> getJIDFromID(int id) const;
boost::optional<int> getIDFromJID(const JID& jid) const;
private:
sqlite3* db_;
};
}