2 * Copyright (C) 2010 Ixonos Plc.
4 * This file is part of fosdem-schedule.
6 * fosdem-schedule is free software: you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the Free
8 * Software Foundation, either version 2 of the License, or (at your option)
11 * fosdem-schedule is distributed in the hope that it will be useful, but
12 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
16 * You should have received a copy of the GNU General Public License along with
17 * fosdem-schedule. If not, see <http://www.gnu.org/licenses/>.
27 class SqlEngine : public QObject
31 SqlEngine(QObject *aParent = NULL);
33 static void initialize();
34 static void addConferenceToDB(QHash<QString,QString> &aConference);
35 static void addEventToDB(QHash<QString,QString> &aEvent);
36 static void addPersonToDB(QHash<QString,QString> &aPerson);
37 static void addLinkToDB(QHash<QString,QString> &aLink);
38 static void addRoomToDB(QHash<QString,QString> &aRoom);
40 static bool beginTransaction();
41 static bool commitTransaction();
43 // search Events for ....
44 static int searchEvent(int conferenceId, const QHash<QString,QString> &columns, const QString &keyword);
46 static QString login(const QString &aDatabaseType, const QString &aDatabaseName);
47 static bool execQuery(QSqlDatabase &aDatabase, const QString &aQuery);
50 #endif /* SQLENGINE_H */