6 #include <QtSql/QSqlDatabase>
7 #include <QtSql/QSqlError>
11 #include "coordinates/geocoordinate.h"
14 class Database : public QObject
18 Database(QObject *parent = 0);
21 bool addTag(qulonglong userId, const QString &tag);
22 QByteArray getNotifications(qulonglong userId);
23 QHash<QString, QString> getTags(qulonglong userId);
24 QByteArray getInterestingPeople(qulonglong userId,
25 const GeoCoordinate &southWestCoordinates,
26 const GeoCoordinate &northEastCoordinates);
27 QByteArray getInterestingPeopleByTag(qulonglong userId, const QString &tag);
29 bool createNotificationTable();
30 bool createTagTable();
31 bool createUserTagTable();
32 bool createUserTable();
34 bool removeMessage(qulonglong userId, const QString &id);
35 bool removeTags(qulonglong userId, const QStringList &tags);
36 bool sendMessage(qulonglong senderId, qulonglong receiverId, const QString &message,
37 const GeoCoordinate &coordinates);
40 QSqlDatabase m_database;
41 QList<Message*> m_notifications;